发布时间:2018-06-09 11:51:54编辑:Run阅读(5743)
使用用模态对话框 SimpleDialg
代码:
import tkinter as tk from tkinter.simpledialog import * root = tk.Tk() # 创建一个 SimpleDialog # buttons:显示的按钮 # default:默认选中的按钮 dlg = SimpleDialog(root, text='hello simpledialog', buttons=['yes', 'no', 'cancel'], default=0, ) # 执行对话框 print(dlg.go()) root.mainloop()
结果:
返回值为点击的按钮在 buttons 中的索引值
使用 tkSimpleDialog 模块
代码:
import tkinter as tk # 引入 SimpleDialog 模态对话框 from tkinter.simpledialog import * root = tk.Tk() # 输入一个整数, # initialvalue 指定一个初始值 # prompt 提示信息 # title 提示框标题 print(askinteger(title='prompt', prompt='input a interger', initialvalue=100)) # 输入一浮点数 # minvalue 指定最小值 # maxvalue 指定最大值,如果不在二者指定范围内则要求重新输入 print(askfloat(title='float',prompt='input a float',minvalue=0,maxvalue=11)) # 输入一字符串 print(askstring(title='string',prompt='input a string')) root.mainloop()
结果:
返回值为各自输入的值
打开文件对话框
代码:
import tkinter as tk from tkinter.filedialog import * root = tk.Tk() # 指定 master 就可以了。 # title 属性用来指定标题 fd = LoadFileDialog(root) # go 方法的返回值即为选中的文本路径,如果选择取返回值则为 None print(fd.go()) root.mainloop()
结果:
返回选中的文件名称
保存文件对话框
与 LoadFileDialog 正好操作相反,这个类是用来保存文件。
各个 参数的意义都 一样,只是 ok 的返回值为保存的文件名称;如果取消则为 None
代码:
import tkinter as tk from tkinter.filedialog import * root = tk.Tk() # 指定 master 就可以了。 # title 属性用来指定标题 fd = SaveFileDialog(root) # go 方法的返回值即为选中的文本路径,如果选择取返回值则为 None print(fd.go()) root.mainloop()
结果:
返回选中的文件名称
使用颜色对话框
代码:
import tkinter as tk # 引入 colorchoose 模块 from tkinter.colorchooser import * root = tk.Tk() # 调用 askcolor 返回选中颜色的(R,G,B)颜色值及#RRGGBB 表示 print(askcolor()) root.mainloop()
结果:
使用消息对话框
使用提示对话框模块 tkMessageBox
代码:
import tkinter as tk # 引入 messagebox 模块 from tkinter.messagebox import * root = tk.Tk() stds = [ showinfo, # 显示信息消息框 showwarning, # 显示警告消息框 showerror, # 显示错误消息框 askquestion, # 显示询问消息框 askokcancel, # 显示确认/取消消息框 askyesno, # 显示是/否消息框 askretrycancel # 显示重试/取消消息框 ] for std in stds: print(str(std), std(title=str(std), message=str(std))) # 程序打印输出结果如下(与点击的按钮得到不同其值) # <function showinfo at 0x0000015C6EB89510> ok # <function showwarning at 0x0000015C703B7400> ok # <function showerror at 0x0000015C703B7488> ok # <function askquestion at 0x0000015C703B7510> yes # <function askokcancel at 0x0000015C703B7598> True # <function askyesno at 0x0000015C703B7620> True # <function askretrycancel at 0x0000015C703B7730> True root.mainloop()
结果:
如果要确认点击的是那一个按钮,则可以判断这个消息框的返回值,注意各个值有所不同,返回值有 ok/yes/True
使用缺省焦点
使用提示对话框模块 tkMessageBox 缺省焦点
代码:
import tkinter as tk from tkinter.messagebox import * root = tk.Tk() print(askokcancel(title='quit application?', message='would you like quit this application', default='cancel' # 指定默认焦点位置 )) root.mainloop()
结果:
使用 default 来指定默认焦点位置,ABORT/RETRY/IGNORE/OK/CANCEL/YES/NO,如果指定的按钮不存在,在抛出异常
上一篇: tkinter -- Font
下一篇: tkinter -- Event(1)
47604
45983
36909
34467
29079
25713
24565
19714
19245
17756
5564°
6155°
5690°
5737°
6703°
5482°
5484°
5988°
5965°
7295°