📅  最后修改于: 2023-12-03 15:04:11.275000             🧑  作者: Mango
Tkinter 是 Python 自带的 GUI 工具包,它可以让开发者创建图形用户界面。其中,提问对话框是很常见的一种对话框,可以让用户输入一些信息或者做出一些选择。在 Tkinter 中,我们可以通过 askquestion
、askyesno
等方法来创建提问对话框。
askquestion
方法可以创建一个包含“是”和“否”两个按钮的提问对话框。当用户点击其中一个按钮时,该方法会返回一个字符串,表示用户点击了哪个按钮。字符串的取值为 “yes” 或 “no”。
以下是使用 askquestion
的示例代码:
from tkinter import messagebox
response = messagebox.askquestion("Question", "Are you sure?")
if response == "yes":
messagebox.showinfo("Confirmation", "You clicked Yes!")
else:
messagebox.showinfo("Confirmation", "You clicked No!")
示例中,我们先调用 askquestion
方法,创建一个包含“是”和“否”两个按钮的提问对话框。对话框的标题为 “Question”,提示信息为 “Are you sure?”。当用户点击其中一个按钮时,该方法会返回一个字符串,我们将其保存在变量 response
中。
接着,根据 response
的取值来展示相应的信息提示框。如果用户点击了“是”按钮,则展示“You clicked Yes!”;如果用户点击了“否”按钮,则展示“You clicked No!”。
askyesno
方法可以创建一个包含“是”和“否”两个按钮的提问对话框。当用户点击其中一个按钮时,该方法会返回一个布尔值,表示用户点击的按钮。返回值为 True 表示用户点击了“是”按钮,返回值为 False 表示用户点击了“否”按钮。
以下是使用 askyesno
的示例代码:
from tkinter import messagebox
response = messagebox.askyesno("Question", "Are you sure?")
if response:
messagebox.showinfo("Confirmation", "You clicked Yes!")
else:
messagebox.showinfo("Confirmation", "You clicked No!")
该示例和前一个示例的区别在于 askyesno
方法返回的不是字符串,而是布尔值。我们在展示信息提示框时,根据返回值的取值来展示相应的信息。
Tkinter 提供了多种不同的方法来创建提问对话框,其中常用的有 askquestion
和 askyesno
。这些方法都需要 messagebox
模块的支持。在使用时,我们需要根据返回值的类型来判断用户的选择,并采取相应的处理。