Python Tkinter输入对话框(附带实例讲解)

广告位

在 simpledialog 模块下还有如下便捷的工具函数,通过这些工具函数可以更方便地生成各种输入对话框: …

在 simpledialog 模块下还有如下便捷的工具函数,通过这些工具函数可以更方便地生成各种输入对话框:

  • askinteger:生成一个让用户输入整数的对话框。
  • askfloat:生成一个让用户输入浮点数的对话框。
  • askstring:生成一个让用户输入字符串的对话框。

上面三个工具函数的前两个参数分别指定对话框的标题和提示信息,后面还可以通过选项来设置对话框的初始值、最大值和最小值。

下面程序示范了 simpledialog 模块下三个工具函数的用法:

  from tkinter import *  # 导入ttk  from tkinter import ttk  # 导入simpledialog  from tkinter import simpledialog  class App:      def __init__(self, master):          self.master = master          self.initWidgets()      def initWidgets(self):          # 创建3个按钮,并为之绑定事件处理函数          ttk.Button(self.master, text='输入整数对话框',              command=self.open_integer # 绑定open_integer方法              ).pack(side=LEFT, ipadx=5, ipady=5, padx= 10)          ttk.Button(self.master, text='输入浮点数对话框',              command=self.open_float # 绑定open_integer方法              ).pack(side=LEFT, ipadx=5, ipady=5, padx= 10)          ttk.Button(self.master, text='输入字符串对话框',              command=self.open_string # 绑定open_integer方法              ).pack(side=LEFT, ipadx=5, ipady=5, padx= 10)      def open_integer(self):           # 调用askinteger函数生成一个让用户输入整数的对话框          print(simpledialog.askinteger("猜糖果", "你猜我手上有几个糖果:",              initialvalue=3, minvalue=1, maxvalue=10))      def open_float(self):          # 调用askfloat函数生成一个让用户输入浮点数的对话框          print(simpledialog.askfloat("猜体重", "你猜我我体重多少公斤:",              initialvalue=27.3, minvalue=10, maxvalue=50))      def open_string(self):          # 调用askstring函数生成一个让用户输入字符串的对话框          print(simpledialog.askstring("猜名字", "你猜我叫什么名字:",              initialvalue='Charlie'))  root = Tk()  root.title("输入对话框测试")  App(root)  root.mainloop()

上面程序中第 23 行代码生成让用户输入整数的对话框;第 27 行代码生成让用户输入浮点数的对话框;第 31 行代码生成让用户输入字符串的对话框。

askinteger()、askfloat 和 askstring 这三个函数会返回用户输入的数据,因此上面三行代码打印了这三个函数的返回值,这样就可以打印出用户输入的内容。

运行该程序,单击界面上的“输入整数对话框”按钮,可以看到如图 1 所示的对话框。

Python Tkinter输入对话框(附带实例讲解)
图 1 输入整数的对话框

在图 1 所示的对话框中,用户只能输入整数,而且输入的整数必须在指定范围内;否则,系统会生成错误提示。当用户输入所允许范围内的整数并单击“OK”按钮后,可以看到控制台打印了用户输入的整数。

单击界面上的“输入浮点数对话框” 按钮,可以看到如图 2 所示的对话框。

Python Tkinter输入对话框(附带实例讲解)
图 2 输入浮点数的对话框

在图 2 所示的对话框中,用户只能输入浮点数,而且输入的浮点数必须在指定范围内; 否则,系统会生成错误提示。当用户输入所允许范围内的浮点数并单击“OK”按钮后,可以看到控制台打印了用户输入的浮点数。

单击界面上的“输入字符串对话框”按钮,可以看到如图 3 所示的对话框。

Python Tkinter输入对话框(附带实例讲解)
图 3 输入字符串的对话框

在图 3 所示的对话框中,用户只能输入字符串。当用户输入合适的字符串并单击“OK”按钮后,可以看到控制台打印了用户输入的字符串

关于作者: Python基础入门教程

为您推荐

广告位

发表评论