python tkinter输入框_Python Tkinter输入对话框(附带实例讲解)

在 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 所示的对话框。

9-1561110304.gif

图 1 输入整数的对话框

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

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

10-1561110304.gif

图 2 输入浮点数的对话框

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

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

0-1561110304.gif

图 3 输入字符串的对话框

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

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值