这篇博客主要是总结一下Tkinter中的对话框的使用,值得一提的是自从python3.0之后关于关于对话框的模块(messagebox、filedialog、colorchooser)都被收归到了tkinter的麾下,也就是说在import模块的时候需要注意一下。 
Tkinter提供了三种标准的对话框模块: 
1.messagebox 
2.filedialog 
3.colorchooser 
下面一次介绍这三种对话框: 
1.mesaagebox

import tkinter.messagebox
from tkinter import *
tkinter.messagebox.askokcancel("FishC Demo",'发射导弹?')
tkinter.messagebox.askquestion("FishC Demo","买个优盘?")
tkinter.messagebox.askretrycancel("FishC Demo","启动失败,重试?")
tkinter.messagebox.askyesno("FishC Demo","我帅吗?")
tkinter.messagebox.showerror("FishC Demo","出错啦!")
tkinter.messagebox.showinfo("FishC Demo","2017新年快乐")
tkinter.messagebox.showwarning("FishC Demo","你在偷懒!")
mainloop()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

运行效果图: 

上面这段代码分别使用了messagebox中的对话框函数,下面总结一下上述函数: 
1.参数 
所有这些函数都有相同的参数: 
(1)title:设置标题栏的文本 
(2)message:设置对话框的主要文本内容,可以用’\n’来实现换行 
(3)options:可以设置选项和含义

2.返回值 
askokcancel()、askretrycancel()、askyesno()返回布尔类型的值

2.filedialog 
文件对话框,主要用于打开或者保存文件

import tkinter.filedialog
from tkinter import *
root = Tk() def callback():
fileName = filedialog.askopenfilename()
print(fileName)
Button(root,text='打开文本',command=callback).pack()
mainloop()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

运行效果图:


总结一下filedialog对话框:

(1).参数 
两个函数可供设置的选项是一样的

(2).返回值 
如果用户选择了一个文件,那么返回值是该文件的完整路径 
如果用户单机取消按钮,那么返回值是空字符串

3.colorchooser 
提供一个用户选择颜色的界面

import tkinter.colorchooser
from tkinter import * root = Tk() def callback():
fileName = colorchooser.askcolor()
print(fileName) Button(root,text="选择颜色",command=callback).pack()
mainloop()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

运行效果图:

 
总结一下这个函数:

1.参数 
askcolor(color,**option)函数中的color参数用于指定初始化的颜色 
默认颜色为浅灰色


2.返回值 
如果用户选择一个颜色并单机确定按钮后,返回值是一个二元组,第一个元素是选择的 
RGB颜色值,第2个元素是对应的十六进制颜色值 
如果用户单击取消按钮,那么返回值为(None,None)

你看了上述代码中关于导入模块的代码可能感到奇怪,明明导入了thinter下的所有模块,为什么还要单独导入messagebox、filedialog、colorchooser模块呢?这个我也不太清楚,不过不单独导入会报错,之后如果解决了这个问题会来及时补充。

本文转自https://blog.csdn.net/bemorequiet/article/details/54744511

Python零基础入门之Tkinter的对话框的更多相关文章

  1. Python 零基础入门

    Python 零基础入门 1.1 Python介绍 Python 是一门优雅且健壮的面向对象解释型计算机程序编程语言,具有面向对象.可升级.可扩展.可移植 语法简洁清晰易学.易读写.易维护.健壮性.通 ...

  2. 大牛整理最全Python零基础入门学习资料

    大牛整理最全Python零基础入门学习资料 发布时间:『 2017-11-12 11:56 』     帖子类别:『人工智能』  阅读次数:3504 (本文『大牛整理最全Python零基础入门学习资料 ...

  3. 猜数字和飞机大战(Python零基础入门)

    前言 最近有很多零基础初学者问我,有没有适合零基础学习案例,毕竟零基础入门的知识点是非常的枯燥乏味的,如果没有实现效果展示出来,感觉学习起来特别的累,今天就给大家介绍两个零基础入门的基础案例:猜数字游 ...

  4. Python运算符 - Python零基础入门教程

    目录 一.算术运算符 二.赋值运算符 三.比较运算符 四.运算符的优先等级 五.重点总结 六.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python ...

  5. Python break/continue - Python零基础入门教程

    目录 一.break 二.continue 三.重点总结 四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 在 Python wh ...

  6. Python for循环 - Python零基础入门教程

    目录 一.for 循环语法 二.for 循环实战 三.重点总结 四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 在 Python ...

  7. Python零基础入门(安装步骤,验证方式, 简单操作)

    本篇文章适合新人小白初步了解Python,涵盖Python的介绍.安装以及简单的基础操作.  1.Python简介 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言.它的设 ...

  8. Python零基础入门必知

    Python自学知识点总结 //2018.10.09 1. Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido ...

  9. 整理的Python零基础入门!转载他人的!

    安装Python 前往 官网下载 对应平台对应工具.另外Python2.7版本和3.3版本并不兼容,所以开发时请注意使用Python的版本. 作为Mac OS X使用者,其实更推荐 PyCharm I ...

随机推荐

  1. 【转】简单谈谈python的反射机制

    [转]简单谈谈python的反射机制 对编程语言比较熟悉的朋友,应该知道“反射”这个机制.Python作为一门动态语言,当然不会缺少这一重要功能.然而,在网络上却很少见到有详细或者深刻的剖析论文.下面 ...

  2. Direct Shot Correspondence Matching

    一篇BMVC18的论文,关于semantic keypoints matching.dense matching的工作,感觉比纯patch matching有意思,记录一下. 1. 摘要 提出一种针对 ...

  3. mysql忘记root密码,修改mysql密码

    1.修改mysql配置文件  vim /etc/my.cnf #编辑文件 找到[mysqld],在下面添加一行 skip-grant  :wq #保存退出 service mysqld restart ...

  4. Firefox is already running,实际后台查不到进程了

    Firefox is already running, but is not responding. To open a new window, you must first close the ex ...

  5. Linker Scripts3--MEMORY Command

    1.前言 链接器的默认配置允许所有有效内存的分配,你可以使用MEMORY命令来重新定义它 2.MEMORY命令 MEMORY命令描述了一个内存块的位置和大小.你可以用它来描述哪块内存区域可以被链接器使 ...

  6. NUMA的取舍与优化设置【转】

    NUMA的取舍与优化设置 在os层numa关闭时,打开bios层的numa会影响性能,QPS会下降15-30%; 在bios层面numa关闭时,无论os层面的numa是否打开,都不会影响性能. 安装n ...

  7. C#基础巩固之属性

    平常写代码,类中最长用到的字段,属性,方法.虽然经常用属性,但是对属性的认知只是停留在{get;set;}上,也知道可以逻辑判断,只读什么的,没有深入研究: 此篇随笔用来做做属性的文章,加深下认知,文 ...

  8. Java的if判断对象为null时,null放在比较运算符的左边还是右边较好?

    如java中:if(name == null)和if(null == name)有什么讲究吗? 答:在java里面,它们是一样的.但是通常写为null == name.这其实是在C语言里面引申出来的. ...

  9. 1、git基础介绍及远程/本地仓库、分支

    1. Git基础介绍 基于Git进行开发时,首先需要将远程仓库代码clone到本地,即为本地仓库.后续大部分时间都是基于本地仓库上的分支进行编码,最后将本地仓库的代码合入远程仓库. 1.1. 远程仓库 ...

  10. ASP.NET MVC5入门1之项目创建

    本博文参考ASP.NET MVC5入门指南,下载链接: ASP.NET_MVC5_入门指南 1.创建项目 文件 --> 新建 --> 项目 Visual C# --> Web --& ...