这篇文章主要介绍“Python Tkinter标准对话框模块有哪些”,在日常操作中,相信很多人在Python Tkinter标准对话框模块有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python Tkinter标准对话框模块有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
创新互联专注于下陆网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供下陆营销型网站建设,下陆网站制作、下陆网页设计、下陆网站官网定制、小程序设计服务,打造下陆网络公司原创品牌,更为您提供下陆网站排名全网营销落地服务。
messagebox。
filedialog。
colorchooser
这三个模块原来是独立的,分别是tkMessageBox、tkFileDialog和tkColorChooser,需要导入才能使用。在Python3之后,这些模块全部被收归到tkinter模块的麾下。
import tkinter as tk from tkinter import messagebox root = tk.Tk() def callback(): result = messagebox.askyesno(message='确认选择 ?') print(result) tk.Button(root, text="选择", command=callback).pack() tk.mainloop()
下图列举使用messagebox可以创建的所有标准对话框样式
所有的这些函数都有相同的参数:
title参数毋庸置疑是设置标题栏的文本。
message参数是设置对话框的主要文本内容,可以用'\n'来实现换行。
options参数可以设置的选项和含义如下表所示。
askokcancel(),askretrycancel()和askyesno()返回布尔类型的值:
返回True表示用户单击了“确定”或“是”按钮。
返回False表示用户单击了“取消”或“否”按钮。
askquestion()返回"yes"或"no"字符串表示用户单击了“是”或“否”按钮。
showerror(),showinfo()和showwarning()返回"ok"表示用户单击了“是”按钮。
当应用程序需要使用打开文件或保存文件的功能时,文件对话框显得尤为重要。实现起来就是这样:
# p15_62.py from tkinter import * from tkinter import filedialog root = Tk() def callback(): filename = filedialog.askopenfilename() print(filename) Button(root, text="打开文件", command=callback).pack() mainloop()
filedialog模块提供了两个函数:askopenfilename(** option)和asksaveasfilename(**option),分别用于打开文件和保存文件。
两个函数可供设置的选项是一样的,下表列举了可用的选项及含义。
如果用户选择了一个文件,那么返回值是该文件的完整路径。
如果用户单击了取消按钮,那么返回值是空字符串。
颜色选择对话框提供一个让用户选择颜色的界面,请看下面的例子:
# p15_63.py from tkinter import * from tkinter import colorchooser root = Tk() def callback(): fileName = colorchooser.askcolor() print(fileName) Button(root, text="选择颜色", command=callback).pack() mainloop()
askcolor(color, ** option)函数的color参数用于指定初始化的颜色,默认是浅灰色;option参数可以指定的选项及含义如下表所示
如果用户选择一个颜色并单击“确定”按钮后,返回值是一个二元组,第1个元素是选择的RGB颜色值,第2个元素是对应的十六进制颜色值。
如果用户单击“取消”按钮,那么返回值是(None,None)。
到此,关于“Python Tkinter标准对话框模块有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!
网站标题:PythonTkinter标准对话框模块有哪些
分享链接:/article20/jogsco.html
成都网站建设公司_创新互联,为您提供网站收录、动态网站、电子商务、、网页设计公司、定制开发
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联