第十一次课GUI编程教学教学课件.pptx
《第十一次课GUI编程教学教学课件.pptx》由会员分享,可在线阅读,更多相关《第十一次课GUI编程教学教学课件.pptx(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、复习回顾任务九 GUI编程感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!新课导入到目前为止,我们所编写的Python代码都是处于一个文字交互界面的状态。但在实际应用中,很多用户都是非专业的,他们希望所提供的软件能有一个友好的界面,这就用到GUI编程了。GUI(Graphical User Interface)又称图形用户界面,是指采用图形方式显示的用户操作界面。Python的GUI工具包有很多,其中最常用的有tkinter,wxPython,PyGTK,PyQt等,
2、本章将介绍如何使用tkinter来编写GUI程序。感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!知识能力目标理解使用tkinter进行GUI编程的主要步骤熟悉tkinter的常用控件掌握事件绑定的方法掌握布局管理器的使用方法了解标准对话框的使用方法连接数据库11.1 tkinter和Python编程11.2 tkinter常用控件11.3 事件绑定11.4 布局管理器11.5 标准对话框11.6 典型案例计算器11.1 tkinter和Python编程11.1.2
3、tkinter的使用11.1.1 tkinter简介感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.1.1 tkinter简介tkinter和Python编程u tkinter是Python的标准GUI库。u tkinter的优点是简单易用,与Python结合度好。u tkinter在Python 3.x下默认集成,不需要额外安装。因此,想要使用tkinter进行GUI编程,可直接使用import语句导入tkinter模块。import tkinter感谢您下载
4、包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.1.2 tkinter的使用tkinter和Python编程创建一个GUI应用程序需要以下5个主要步骤。导入tkinter模块(import tkinter)创建一个顶层窗口对象(调用Tk()类),用于容纳整个GUI应用在顶层窗口对象上构建所有的GUI控件通过底层应用代码将这些GUI控件连接起来进入主事件循环(调用mainloop()函数)感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传
5、播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!tkinter常用控件在GUI编程中,顶层窗口对象包含组成GUI应用程序的所有小窗口对象,它们可能是文字标签、按钮、列表框等,这些独立的GUI组件称为控件。控 件描 述Button按钮控件,在程序中显示按钮Canvas画布控件,显示图形元素,如线条、椭圆、矩形等Checkbutton多选框控件,用于在程序中提供多项选择框Entry输入控件,用于显示简单的文本内容Frame框架控件,在屏幕上显示一个矩形区域,多用作容器Label标签控件,可以显示文本和图像LabelFrameFrame的进化版,标签和框架的
6、组合Listbox列表框控件,用来显示一个字符串列表给用户Menu菜单控件,显示菜单栏、下拉菜单和弹出菜单Menubutton菜单按钮控件,用于显示菜单项Message消息控件,用来显示多行文本,与Label类似PanedWindow窗口布局管理插件,可以包含一个或多个子控件Radiobutton单选按钮控件,显示一个单选的按钮状态Scale线性滑块控件,根据已设定的起始值和终止值,给出当前设定的精确值Scrollbar滚动条控件,当内容超过可视化区域时使用,如列表框SpinboxEntry和Button的组合,允许对值进行调整Text文本控件,用于显示多行文本Toplevel容器控件,用来提
7、供一个单独的对话框,和Frame类似感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.1.2 tkinter的使用tkinter和Python编程例:第一个tkinter实例创建一个窗口用于输出“Hello world“。import tkinter#导入tkinter模块top = tkinter.Tk()#创建一个顶层窗口对象label = tkinter.Label(top,text=Hello World,fg=red)#添加一个Label控件,用于显示文
8、本label.pack()#调用Label控件的pack()方法top.mainloop()#进入主事件循环程序运行效果11.2 tkinter常用控件感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.1 窗口tkinter常用控件窗口也称为框架(Frame),是屏幕上的一块矩形区域,多用来作为容器布局窗体。窗口中可包含标签、菜单、按钮等其他控件,其运行之后可移动和缩放。属 性描 述title设置窗口标题geometry设置窗口大小resizable设置窗口是
9、否可以变化长和宽感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.1 窗口tkinter常用控件例:创建一个300200的窗口,其标题为“金企鹅”,运行后该窗口宽不可变,高可变。import tkinter#导入tkinter库window = tkinter.Tk()#创建tkinter对象window.title(金企鹅)#设置标题window.geometry(300 x200)#设置窗口大小,注意是字母xwindow.resizable(width=F
10、alse, height=True)#宽不可变,高可变,默认为Truewindow.mainloop()#进入主事件循环程序运行效果感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.2 Label控件tkinter常用控件Label控件是用于在界面上输出描述信息的标签,可以显示文本和图像。属 性描 述text要显示的文本bg背景颜色fg前景色bd外围3D边界的宽度font字体width控件宽度height控件高度relief边框样式感谢您下载包图网平台上提供的
11、PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.2 Label控件tkinter常用控件例:创建一个200100的窗口,其标题为“金企鹅”,在窗口中创建一个标签,用于显示“金企鹅联合出版中心”,并设置其字体、颜色、宽度和高度。import tkinter#导入tkinter库window = tkinter.Tk()#创建tkinter对象window.title(金企鹅)#设置标题window.geometry(200 x100)#设置窗口大小,注意是字母x#创建标签,text设置文
12、本,bg设置背景色,fg设置前景色,font设置字体,width设置宽,height设置高label1 = tkinter.Label(window, text=金企鹅联合出版中心, bg=white, fg=blue, font=(宋体), width=20, height=3)label1.pack()#显示Labelwindow.mainloop()#进入主事件循环程序运行效果感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.3 Button控件tkin
13、ter常用控件通过Button控件可以方便地与用户进行交互。Button控件有一个command属性,用于指定一个函数或方法,当用户单击按钮时,tkinter就会自动调用该函数或方法。例:编写程序实现通过按下按钮来执行指定操作(改变标签的内容)。import tkinter as tk#导入tkinter模块重命名为tk#定义函数,用于实现改变标签的内容def btnHelloClicked(): labelHello.config(text = Hello tkinter!)top = tk.Tk()#创建tkinter对象top.geometry(200 x150)#设置窗口大小,注意是字
14、母xtop.title(Button Test)#设置窗口标题#创建原始标签labelHello = tk.Label(top, text = Press the button., height = 5, width = 20, fg = blue)labelHello.pack()#显示标签#创建按钮,显示“Hello”,单击按钮调用btnHelloClicked函数btn = tk.Button(top, text = Hello, command = btnHelloClicked)btn.pack()#显示按钮top.mainloop()#进入主事件循环程序运行效果感谢您下载包图网平台
15、上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.4 Entry控件tkinter常用控件Entry控件就是输入框,用来输入单行内容,可以方便地向程序传递用户参数。获取输入框的内容可以使用Entry控件的get()方法。例:编写摄氏度转华氏度的小程序,要求从输入框输入摄氏度的值,单击计算按钮后得到华氏度的值。计算公式:F = 1.8C+32。import tkinter as tk#导入并重命名tkinter模块#定义函数用于读取Entry控件的内容并将计算结果进行输出def b
16、tnHelloClicked(): cd = float(entryCd.get()#读取Entry控件的内容 labelHello.config(text = %.2fC = %.2fF %(cd, cd*1.8+32)top = tk.Tk()#创建tkinter对象top.title(Entry Test)#设置窗口标题#创建标签labelHello = tk.Label(top, text = 摄氏度转华氏度, height = 5, width = 20, fg = blue)labelHello.pack()#显示标签entryCd = tk.Entry(top, text = 0
17、)#创建输入框entryCd.pack()#显示输入框#创建按钮btnCal = tk.Button(top, text = 计算, command = btnHelloClicked)btnCal.pack()#显示按钮top.mainloop()#进入主事件循环程序运行效果感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.5 Radiobutton和Checkbutton控件tkinter常用控件Radiobutton和Checkbutton控件分别用于实
18、现选项的单选和复选功能。属 性描 述variable单选框索引变量,通过变量的值确定哪个单选框被选中,一组单选框使用同一个索引变量value单选框选中时变量的值command单选框选中时执行的命令(函数)属 性描 述variable复选框索引变量,通过变量的值确定哪些复选框被选中;每个复选框使用不同的变量,使复选框之间相互独立onvalue复选框选中(有效)时变量的值offvalue复选框未选中(无效)时变量的值command复选框选中时执行的命令(函数)感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,
19、按照传播下载次数进行十倍的索取赔偿!11.2.5 Radiobutton和Checkbutton控件tkinter常用控件例:编写程序,实现通过单选框和复选框设置文字样式的功能。import tkinter as tk#导入tkinter模块重命名为tk#定义函数用于修改标签中文字的颜色def colorChecked(): labelHello.config(fg = color.get()#定义函数用于修改标签中文字的字体def typeChecked(): textType = typeBlod.get() + typeItalic.get()#两个复选框的值相加 if textType
20、 = 1:#单选typeBlod复选框 labelHello.config(font = (Arial, 12, bold) elif textType = 2:#单选typeItalic复选框 labelHello.config(font = (Arial, 12, italic) elif textType = 3:#同时选中两个复选框 labelHello.config(font = (Arial, 12, bold italic) else:#两个都不选 labelHello.config(font = (Arial, 12)感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原
21、创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.5 Radiobutton和Checkbutton控件tkinter常用控件top = tk.Tk()#创建tkinter对象top.title(Radio & Check Test)#设置窗口标题#创建标签labelHello = tk.Label(top, text = Check the format of text., height = 3, font=(Arial, 12)labelHello.pack()#显示标签color = tk.StringVar()
22、#获取单选框输入#创建三个单选框并显示tk.Radiobutton(top, text = Red, variable = color, value = red, command = colorChecked).pack()tk.Radiobutton(top, text = Blue, variable = color, value = blue, command = colorChecked).pack()tk.Radiobutton(top, text = Green, variable = color, value = green, command = colorChecked).pa
23、ck()#获取复选框输入typeBlod = tk.IntVar()typeItalic = tk.IntVar()#创建2个复选框tk.Checkbutton(top, text = Blod, variable = typeBlod, onvalue = 1, offvalue = 0, command = typeChecked).pack()tk.Checkbutton(top, text = Italic, variable = typeItalic, onvalue = 2, offvalue = 0, command = typeChecked).pack()top.mainlo
24、op()#进入主事件循环感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.5 Radiobutton和Checkbutton控件tkinter常用控件程序运行效果 提示可以使用tkinter.StringVar()创建与特定控件关联的字符串变量,使用tkinter.IntVar()创建与特定控件关联的整型变量。感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载
25、次数进行十倍的索取赔偿!11.2.6 Menu控件tkinter常用控件tkinter提供了Menu控件,用于实现顶级菜单、下拉菜单和弹出菜单。函数名称说 明menu.add_cascade()添加子选项menu.add_command()添加命令(label参数为显示内容)menu.add_separator()添加分隔线menu.add_checkbutton()添加确认按钮感谢您下载包图网平台上提供的PPT作品,为了您和包图网以及原创作者的利益,请勿复制、传播、销售,否则将承担法律责任!包图网将对作品进行维权,按照传播下载次数进行十倍的索取赔偿!11.2.6 Menu控件tkinter常
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第十 一次 GUI 编程 教学 课件
限制150内