- 1、本文档共67页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第13章图形用户界面设计;13.1创建图形用户界面的步骤;1.创建主窗口
主窗口是图形用户界面的顶层窗口,也是控件的容器。如果程序没有显式创建主窗口而直接去创建其他控件,系统仍然会自动创建主窗口。例如:
fromtkinterimport*
lbl=Label(text=Python)
第二条语句直接创建一个标签控件,同时自动创建主窗口。;2.在主窗口中添加各种控件并设置其属性
tkinter模块中定义了许多控件类,利用这些控件类的构造函数可以创建控件对象,从而建立图形用户界面。例如:
fromtkinterimport*
w=Tk()
aLabel=Label(w,text=Hello,world!)
aLabel.pack();3.调整对象的位置和大小
调用对象的pack()、grid()或place()方法,通过布局管理器来调整其位置和大小。大多数控件在创建之后并不会立即显示在主窗口中,必须经由布局管理器进行布置之后才变成可见的,因此多数控件都要经历创建和布局两个步骤。;4.为控件定义事件处理程序
用户操作会引发事件,如果控件绑定了事件处理程序,则在控件上发生该事件时会调用相应的事件处理程序。;5.进入主事件循环
最后调用主窗口的mainloop()方法,进入主事件循环,准备处理事件。除非用户关闭窗口,否则程序将一直处于主循环中。;例13-1创建图形用户界面,界面中有一个按钮和一个标签,单击按钮对象时,标签的内容会发生改变。;13.2常用控件;标签控件除了text属性之外,还有其他许多属性。上面的语句中只为标签的text属性提供了值“Hello,World!”,其他属性都使用默认值。font属性指定文本字体。字体描述使用一个三元组,包含字体名称、尺寸(以磅为单位)和字形名称,常用的英文字体有Arial、Verdana、Helvetica、TimesNewRoman、CourierNew、ComicSansMS等,也可以用中文字体,如宋体、楷体、仿宋、隶书等。字形名称可以是normal、bold、roman、italic、underline和overstrike等。;2.标签框架
标签框架一个带标签的矩形框,这是一个容器控件,其中能容纳其他的控件。tkinter模块提供LabelFrame类来创建标签框架对象。下面的语句创建标签框架,并在其中创建标签对象。
lf=LabelFrame(w,text=LabelFrame)
lf.pack()
lbl=Label(lf,text=Label1)
lbl.pack()
lbl=Label(lf,text=Label2)
lbl.pack();3.消息
消息和标签的用法基本一样。例如:
msg=Message(w,text=Hello,World!)
msg.pack()
消息有许多属性,例如,使用aspect属性指定消息的宽高比例。在默认情况下,消息的宽高比是150,即消息的宽度是高度的150%。假如将aspect属性设置为400,即宽为高的4倍。;13.2.2按钮控件
按钮(button)也称命令按钮(commandbutton),它是图形用户界面中最常见的控件,是用户命令程序执行某项操作的基本手段。例如:
btn=Button(w,text=Quit,command=w.quit)
对按钮控件来说,最重要的属性是command,它用于指定按钮的事件处理函数,将按钮与某个函数或方法关联起来。;例13-2主窗口中有一“显示”按钮,单击该按钮时在主窗口中显示“Python程序设计”。;按钮控件还有其他一些属性,如宽度属性width、高度属性height、文本颜色属性fg、背景颜色属性bg、边框大小属性bd(borderwidth,默认为2个像素)、状态属性state(有正常NORMAL,激活ACTIVE,禁用DISABLED三种状态)、边框3D效果属性relief(默认是FLAT,有FLAT、GROOVE、RAISED、RIDGE、SOLID、SUNKEN等效果设置)。;13.2.3选择性控件
1.复选框
复选框(checkbutton)用来提供一些选项供用户进行选择,可以选择多项。
tkinter模块的Checkbutton类用于创建复选框控件,其最简单的用法如下。
Checkbutton(w,text=Python).pack();通常将多个复选框组合为一组,为用户提供多个相关的选项,用户可以从中选择一个或多个选项,当然也可以不选。如果程序中需要查询和设置选项的状态,可以使用variable属性将复选框与一个IntVar或StringVar类型的控制变量关联。用法如下:
v=IntVar
您可能关注的文档
- Python语言程序设计(第2版) 课件 第2章 顺序结构.pptx
- Python语言程序设计(第2版) 课件 第3章 选择结构.pptx
- Python语言程序设计(第2版) 课件 第5章 字符串与文本分析.pptx
- Python语言程序设计(第2版) 课件 第11章 异常处理.pptx
- 国际标准 ISO/TR 22588:2005 EN 光学和光子学 激光和激光相关设备 激光光学元件吸收诱导效应的测量和评估 Optics and photonics — Lasers and laser-related equipment — Measurement and evaluation of absorption-induced effects in laser optical components.pdf
- 国际标准 ISO/TR 22588:2005 EN Optics and photonics — Lasers and laser-related equipment — Measurement and evaluation of absorption-induced effects in laser optical components 光学和光子学 激光和激光相关设备 激光光学元件吸收诱导效应的测量和评估.pdf
- 国际标准 ISO/TR 17452:2007 EN 智能交通系统 用统一建模语言(UML)定义和记录智能运输系统(ITS)/运输信息和控制系统(TICS)接口 Intelligent transport systems — Using UML for defining and documenting ITS/TICS interfaces.pdf
- 国际标准 ISO/TR 17452:2007 EN Intelligent transport systems — Using UML for defining and documenting ITS/TICS interfaces 智能交通系统 用统一建模语言(UML)定义和记录智能运输系统(ITS)/运输信息和控制系统(TICS)接口.pdf
- 国际标准 ISO/IEC TR 24029-1:2021 EN 人工智能 (AI) 神经网络鲁棒性评估 第1部分:概述 Artificial Intelligence (AI) — Assessment of the robustness of neural networks — Part 1: Overview.pdf
- 国际标准 ISO/IEC TR 24029-1:2021 EN Artificial Intelligence (AI) — Assessment of the robustness of neural networks — Part 1: Overview 人工智能 (AI) 神经网络鲁棒性评估 第1部分:概述.pdf
- 国际标准 ISO/IEC TR 10192-2:2000 EN 信息技术 家庭电子系统(HES)接口 第2部分:简单接口类型1 Information technology — Home Electronic Systemes (HES) interfacesPart 2:Simple Interfaces Type 1.pdf
- 国际标准 ISO/IEC TR 10192-2:2000 EN Information technology — Home Electronic Systemes (HES) interfacesPart 2:Simple Interfaces Type 1 信息技术 家庭电子系统(HES)接口 第2部分:简单接口类型1.pdf
- 环保:我们的责任与挑战.pptx
- 2024年江苏南京中医药大学招考聘用5人(人事代理)笔试历年典型考题及考点剖析附答案详解.docx
- 2024年陕西财经职业技术学院专任教师招考聘用42人笔试历年典型考题及考点剖析附答案详解.docx
- [吉安]2023年江西吉安职业技术学院招聘非编教师笔试历年高频考点(难、易错点)附带答案详解.docx
- [南京]2024年江苏南京市玄武区编外教师校医会计招聘50人笔试历年高频考点(难、易错点)附带答案详解.docx
- 2024年河南省定向重庆大学选调应届优秀毕业生5笔试历年典型考题及考点剖析附答案详解.docx
- [吉安]江西吉安市阳明中学招聘高层次人才笔试历年高频考点(难、易错点)附带答案详解.docx
- [云南]2023年云南省传染病医院招聘非事业编制工作人员笔试历年高频考点(难、易错点)附带答案详解.docx
文档评论(0)