版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
零基础Python教程#064label标签水平填充复习1、如何将窗体居中显示?计算:a、窗体的起始点在窗体的左上角B、窗体的x=屏幕的宽度/2–窗体的宽度/22、python和pythonw之间的区别窗体的背景属性Form1[“background”]=“black”Label标签的属性1、创建label2、设置字体大小Lbl标签没有使用fill填充的情况Lbl标签使用fill水平填充lbl1.pack(fill="x")设置字体importtkinter.fontasfont#创建字体
fconfig=font.Font(size=60,family="隶书")
#创建label标签
lbl1=tk.Label(form1,text="编程",font=fconfig)设置label的背景和前景bg背景fg前景总结强调1、掌握设置窗体背景Form1[“background”]=“red”2、掌握label水平拉伸/填充3、掌握label字体的设置4、掌握label的背景色和前景色设置订阅/关注/点赞编程复习1、控件的颜色控制2、窗体的居中3、控件的边距Pack布局Side属性作用:使得控件脱离正常流上top下bottom左left右right总结强调掌握side属性在pack布局中的应用复习1、如何进行字体设置大小等2、使用label标签设置前景色、背景色3、窗体背景Pack布局最简易的布局,可以精确位置的一个布局。填充:fill=“x”水平填充某控件外边距设置:padx设置水平边距、pady设置垂直边距某控件内边距设置:ipadx设置水平边距、ipady设置垂直边距总结强调1、窗体的基本GUI编程2、pack布局外边距的设置3、pack布局内边距的设置订阅/关注/点赞编程零基础Python教程#067Place布局,简单粗暴gui编程复习1、pack布局的side应用注意:代码是从上到下开始读取的,也就是说要把优先级体现高的,放到相对的上面的位置Place布局关注四个属性:1、横坐标x2、纵坐标y3、控件的宽度width4、控件的高度height注意:如果一个属性都不写,就不会被布局Place布局的优势1、布局简单,简单粗暴2、只需要关注x,y,width,height四个属性即可3、根据代码的先后顺序,会将控件一层层叠加Place布局的缺陷1、必须计算控件的实际位置2、层叠的时候,可能会覆盖原有的控件3、没有边距和填充的概念总结强调1、掌握复习了pack布局,代码优先顺序有关2、掌握place布局,只需关注四个属性3、掌握grid布局订阅/关注/点赞编程零基础Python教程#83gui编程比较字典与列表复习1、字典的定义(声明与赋值)空字典:{}定义:{键1:值1,键2:值2,…}2、掌握列表的使用List1=[]List2=[]字典与列表1、字典的键可以是:数字、字符串、元组
列表的索引(键)只能是数字2、字典的增加录入可以直接使用键值对的方式,如果键重复,那么会覆盖前一个相同的键的值列表的增加必须借助insert,append函数3、字典的查询是根据键来查询的列表的查询是根据值来查的字典操作1、值的获取:字典变量[键]2、赋值或增加一项:字典变量[键]=值总结强调1、掌握frame+控件进行综合布局2、掌握字典值的增加、查询、删除deletedic[键]3、明确字典与列表之间的区别订阅/关注/点赞编程零基础Python教程#85gui编程遍历字典与列表GUI编程复习1、text控件的清空delete函數2、format_map函数遍历字典遍历字典:读取指定的字典变量中的所有的键值对使用for循环:两种方式进行遍历1、使用键的方式forkindic1:varlbl1.set(varlbl1.get()+k+"值:"+dic1[k]+";")2、使用键值对的方式,使用字典的items遍历forkey,valueindic1.items():varlbl1.set("键:"+key+",值:"+value)列表的遍历列表遍历方法一:list1=["aaa","bbb","ccc"]forvinlist1:varlbl1.set(varlbl1.get()+v+",")列表遍历方法二:forvinrange(len(list1)):varlbl1.set(varlbl1.get()+list1[v]+",")字符串转字典假设txt1控件中输入的是字符串{"name":"老刘","wxgzh":"编程创造城市"}那么可以进行如下方式的转换:s1=txt1.get(0.0,tk.END)dic1=eval(s1)#执行的结果是一个字典总结强调1、掌握使用键的方式遍历字典2、掌握使用键值对的方式,结合字典的items方法遍历3、两种遍历列表的方式4、将字符串转为字典的方式eval函数订阅/关注/点赞编程零基础Python教程#77菜单开发,menu控件复习Listbox控件:列表框增加:insert方法,有两个参数删除:delete方法,有一个参数查看:选中对应项,采用绑定事件<<ListboxSelect>>获取控件w=e.widget获取选中项索引C=w.curselection()获取选中项的文本w.get(c)global菜单工具栏#创建菜单栏menubar=tk.Menu(form1)创建子菜单步骤:1、创建子菜单模块#创建文件子菜单fileMenu=tk.Menu(menubar,tearoff=False)#tearoff表示不让菜单单独变成一个窗体,实际上去掉了-----------------fileMenu.add_command(label="新建项目...")2、将子菜单模块与菜单栏中的某个菜单项模块进行关联menubar.add_cascade(label="文件",menu=fileMenu)创建子菜单步骤:1、创建子菜单模块#创建文件子菜单fileMenu=tk.Menu(menubar,tearoff=False)#tearoff表示不让菜单单独变成一个窗体,实际上去掉了-----------------fileMenu.add_command(label="新建项目...")2、将子菜单模块与菜单栏中的某个菜单项模块进行关联menubar.add_cascade(label="文件",menu=fileMenu)实现菜单项目的点击1、定义一个函数用来处理对应的菜单命令deffileMenu_NewProject_Click():print("新建项目")pass2、关键菜单项目与函数处理fileMenu.add_command(label="新建项目...",command=fileMenu_NewProject_Click)子菜单分隔符fileMenu.add_separator()增加一个分割符创建三级子菜单同理创建二级子菜单总结强调Menu控件的使用1、菜单工具栏的创建Form1.config(menu=某个菜单对象)2、掌握子菜单及多级子菜单的创建3、子菜单项目的点击事件命令的绑定订阅/关注/点赞编程零基础Python教程#73gui编程单选框Radiobutton复习1、text富文本框插入文字:显示不同的大小、颜色、字体等insert插入图片:插入不同类型的大小的图片create_imageRadiobutton单选框单选选项表单中应用使用关键:1、几个单选框要绑定同一个变量2、绑定同一个点击事件3、value属性不可缺少4、变量属性variable总结强调掌握radiobutton单选框注意绑定同一个变量和事件,保证在同一组中订阅/关注/点赞编程零基础Python教程#78gui编程对话框的多种样式复习menu控件:菜单栏1、创建菜单工具栏menubar2、最底层的一级是add_command呈现点击事件3、创建子菜单,并且要把子菜单的模块与父级的add_cascade这个函数进行关联menu=子菜单模块对话框主要有两种形式1、仅仅呈现一个信息回馈2、与用户进行互动的信息使用对话框1、导入对话框模块importtkinter.messageboxasmsgbox2、使用模块msgbox.showinfo(“标题”,“内容")模态当前弹出的对话框与用户进行互动中,只能点击当前对话框,而不能点击这个软件中其它的窗体对话选择(互动)形式#sr=msgbox.askyesnocancel("魔镜说","我是世界上最帅的吗?")#sr=msgbox.askyesno("魔镜说","我是世界上最帅的吗?")#sr=msgbox.askretrycancel("魔镜说","我是世界上最帅的吗?")#sr=msgbox.askquestion("魔镜说","我是世界上最帅的吗?")sr=msgbox.askokcancel("魔镜说","我是世界上最帅的吗?")注意:以上只有标红的askquestion这个函数是返回yes或者no,其它的都是返回true或者false或者none总结强调1、对话框的信息显示2、对话框的选择询问形式,这种形式可以处理用户的不同选择的结果这两种形式使用类似的,就是参数的格式一致,第一个参数是标题,第二个参数是内容订阅/关注/点赞编程零基础Python教程#74gui编程复选框checkbutton复习Radiobutton单选框多个选项中,同一时间只能选中一项1、绑定同一个变量2、绑定同一个事件3、默认情况下未选中,就只需要,将变量设置为默认情况下没有选中相应的项即可复选框,多选框,多选按钮
checkbuttonOnvalue设置选中时候的值Offvalue设置未选中的时候的值通过ck1.cget(“text”)来获取选项卡上的文本通过variable=varck1来绑定不同的复选框的变量,因为每个复选框是独立的总结强调掌握checkbutton的基本使用掌握获取控件文本内容的方法cget方法订阅/关注/点赞编程零基础Python教程#072gui编程富文本框text复习1、bind事件绑定选定控件绑定控件变量Text控件号称:富文本框。能显示不同颜色的文字、能载入图片、tag_config方法利用某个别名作为标签,具体的对应标签的属性功能配置在后面参数Insert方法往text文本框中插入文字格式Insert(索引,具体插入的文字,文字的配置)Size属性和resize方法Size属性:返回一个tuple类型的数据resize方法:重新设置图片大小,返回值是图片对象富文本框插入图片使用image_create方法第一个参数是:索引第二个参数:具体的图片总结强调1、tag_config2、insert3、image_create订阅/关注/点赞编程零基础Python教程#75gui编程滑块Scale控件复习比较:单选框、复选框Radiobutton:绑定的是同一个变量和事件函数Checkbutton:绑定不同的变量,可以是相同的函数Cget方法获取checkbutton的text内容Scale控件看属性常用的有哪些?1、配置方向:orient=tk.HORIZONTAL2、配置滑块长度:length=3003、标签:label="颜值“4、配置范围:from_=30,to=605、配置刻度值(每个多少显示一个刻度):tickinterval=56、滑块每次滑动会增减多少值:resolution=5默认情况下是垂直的滑块,默认范围0-100sc1=tk.Scale(form1)如何获取scale控件选中的值?通过command属性来出入函数注意:这个函数需要带有一个参数,这个参数就是滑块对应的当前的值defmyset(a):lbl1.config(text="选择值:"+a)总结强调1、掌握scale控件的基本使用2、注意:范围配置from_…to..3、通过config方法直接再次配置某个控件的属性4、获取scale值的时候注意函数要有参数订阅/关注/点赞编程零基础Python教程#79gui编程计算器模拟第一节复习对话框:1、提供信息型,使用show开头的函数名称2、选择型:可以跟用户交互,让用户选择,使用ask…开始的函数名称Frame框架作用:用作布局使用。在使用frame内部,可以重新进行一次布局。Frame外部如果使用pack布局,我们可以在frame内部可以使用grid布局。软件设计分析总体布局采用grid1、第一部分:entry控件,单行文本框2、第二部分:Button控件,需要把所有的按钮控件放到grid中,在这个子的grid中的行列又会重新从第0行第0列开始计算,把这个子grid放到frame框架中总结强调1、注重软件分析2、开发的时候,一步步来,先出基本效果,然后再美化。3、有共性的控件,尽量采用循环遍历输出,可以优化代码4、掌握frame控件的使用订阅/关注/点赞编程零基础Python教程#069gui编程计算颜色亮度复习1、随机颜色2、基本的颜色原理序列推导法序列的生成:循环次数决定序列的元素个数作用:往往就在批量生成序列格式:[显示结果forxinrange(循环次数)]backColor=[xforxinrange(3)]序列生成随机颜色#采用推导法生成颜色backColor=[random.randrange(256)forxinrange(3)]backColor="#%02x%02x%02x"%tuple(backColorArr)如何计算亮度?亮度=int(红色*0.3+蓝色*0.6+绿色*0.1)亮度的临界值是120单行的if语句类似三目运算符foreColor="white"if(light<120)else"black"总结强调1、掌握两种优化代码的方式:A、序列的批量生成:推导法B、if语句的当行赋值:天平法2、掌握亮度的计算公式361订阅/关注/点赞编程零基础Python教程listbox控件列表框增删改查#76复习Scale控件:在固定值的范围内选择的一个滑块。Length等属性函数有参数,这个参数就是选择的值。Listbox控件增加lbox1.insert(tk.END,ent1.get())参数1:插入的地方到哪里参数2:插入的文本Pass关键词作用:用作占位符。用来当我们没有代码要可以写的时候,可能会报错的地方,就使用pass,这些代码往往都是预定义的函数方法等listbox查询项绑定选择事件lbox1.bind("<<ListboxSelect>>",lbox1_Select)deflbox1_Select(e):w=e.widgetglobaltt=w.curselection()if(t==()):returnprint(t)lbl1.config(text=w.get(t))passListbox删除项lbox1.delete(t)T代表索引,在listbox中的第几项补充声明全局变量和局部变量全局变量:直接使用global关键字即可声明一个全局变量。所谓全局变量:就是可以在各个不同的def方法中进行使用的变量局部变量:某个变量在def中使用,那么只能在该def中使用总结强调掌握listbox控件的使用1、listbox增加元素2、listbox删除元素3、listbox选择元素,需要使用bind方法绑定<<ListboxSelect>>事件掌握全局变量的使用订阅/关注/点赞编程零基础Python教程#068gui编程随机颜色生成gui编程复习Place布局关注四个属性:X水平位置Y垂直位置Width宽度Height高度十六进制的颜色基础Rgb颜色:红、绿、蓝每一个颜色值的范围0-255之间十六进制中的颜色表示用六位十六进制数表示从左开始,没两位表格一种颜色例如:AABBCCAA表示红色的范围BB表示绿色的范围CC表示蓝色的范围随机数random库如何随机生成Hex颜色?mycolor=[random.randrange(256),random.randrange(256),random.randrange(256)]hexColor="#%02x%02x%02x"%tuple(mycolor)总结强调1、回顾窗体居中2、回顾了字符串的格式化3、回顾列表和元组的使用4、回顾for语句的使用5、掌握利用随机数生成随机颜色的方法订阅/关注/点赞编程零基础Python教程#071gui编程统计打字数量复习1、pillow库Image加载图片,imageTk加载为tk适合显示的格式,写入到控件的image属性2、pack布局anchor上n下s左w右e键盘事件的绑定控件的bind方法1、考虑什么控件触发的键盘事件2、定义函数,函数要传入事件参数e3、使用bind方法,对控件进行绑定Bind(“<事件>”,函数名称)键盘打字统计案例实战1、form界面的配置2、布局,使用grid3、定义函数4、绑定控件事件5、统计输出总结强调1、事件的调用掌握使用bind2、掌握控件变量的绑定3、掌握定义绑定事件的函数订阅/关注/点赞编程零基础Python教程#82GUI编程引入字典复习总结计算器模拟中使用的技术要点:1、界面使用for循环输出列表的形式2、<Button-1>绑定鼠标左键点击事件,可以将当前点击的按钮出入到函数中,以便获取相应的点击按钮来进行处理3、eval函数进行计算4、try….except…进行异常处理为什么使用字典?1、使用字典可以快速找到我们需要的内容,字典中的内容都是都是有序的,排列树结构。2、使用形式:根据某个键(key),这个键可以成为某个关键词,根据这个关键词,去找到对应的内容解决一个问题要求:获取存储在变两种的某个值举例:获取某个人,对应的年龄是什么?1、一批人,存放在列表1中list1=[“老刘”,”老张”,”老王”]2、这批人对应的年龄,存在列表2中list2=[30,40,35]采用简便方式---字典的使用使用格式:{键1:值1,键2:值2,键3:值3…}键:key值:value注意:字典归类为序列中的某一种形式字典的运行效率要高于列表总结强调1、掌握字典的声明和赋值格式2、掌握如何使用字典3、掌握多个列表的运用订阅/关注/点赞编程零基础Python教程#070gui编程载入图像复习1、推导法来批量生成序列[xforxinrange(9)]2、天平法写if语句类似三目运算A=“gg”if(2>1)else“TT”3、计算亮度3611、载入第三方库C:\Users\ljy>pipinstallpillowCollectingpillowDownloading/packages/70/21/04723e78916eff8e09901dbb7dc9705f4de8a0dfe7882a9ed56982bd128e/Pillow-6.0.0-cp37-cp37m-win32.whl(1.7MB)|████████████████████████████████|1.7MB285kB/sInstallingcollectedpackages:pillowSuccessfullyinstalledpillow-6.0.02、应用PIL库导入图像库fromPILimportImageTk,Image根据路径载入图片对象pic1=Image.open("./img/1.gif")转为tk适合的图片格式photo1=ImageTk.PhotoImage(pic1)应用到label标签lbl1=tk.Label(form1,image=photo1)lbl1.pack()总结强调1、使用pip载入pillow库2、Image载入图片3、ImageTk转为tk适应的图片格式4、pack布局的anchor属性值是根据上北(N)下南(S)左西(W)右东(E)例如tk.W订阅/关注/点赞编程零基础Python教程#84字典格式化和基本操作GUI编程复习1、掌握字典与列表之间的区别a.键的区别b.增加加入的时候c.查找in2、掌握综合布局格式化字典1、规划好字典参数2、规划好字符串有哪些需要替换的,需要被替换的地方使用{字典的键}3、使用函数format_map(字典),这个函数是字符串自带的函数TEXT控件中的文本获取get()的利用可以获取text控件的文本内容,这个函数有两个参数,第一个参数代表开始位置,第二个参数代表获取的结束位置举例:s1=txt1.get(0.0,tk.END)总结强调1、掌握text控件的清空,使用delete2、掌握text控件文本获取,使用get3、掌握字符串的format_map方法来传入字典的方式对字符串进行格式化订阅/关注/点赞编程零基础Python教程#047GUI窗体界面编程复习1、矩阵的行列交换2、训练的是思维、高数中在编程中的思想运用补充:自定义函数函数:在编程中,int函数、list函数、str函数、float函数等,这些都是python的sdk中自带函数。那么自己去定义函数?格式:def函数名称():函数的内容,具体就是很多的python代码GUI编程的前提,需要库tkinter库,这个一个开发gui的模块,里面有很多的控件创建窗体项目1、导入库tkinterimporttkinter2、创建窗体window=tkinter.Tk()3、界面死循环,监听界面上所有的事件tkinter.mainloop()4、规划界面如何规划窗体和界面?1、设置窗体的宽高和在屏幕上出现的位置,通过调用geometry函数来实现。window.geometry("400x300+400+200")参数是个字符串:宽x高+水平方向的位置+垂直方向的位置2、创建标签控件lbl=tkinter.Label(window,text="编程创造城市")通过简单的布局来显示控件lbl.pack()总结强调1、掌握导入tkinter库2、掌握窗体的创建3、掌握标签的创建4、掌握按钮的创建5、掌握自定义函数的调用6、掌握点击事件订阅/关注/点赞编程零基础Python教程#063gui窗体居中tk的妙用!复习1、ord函数2、chr函数获取窗体属性window=tk.Tk()#获取屏幕宽度ws=window.winfo_screenwidth()#获取屏幕高度hs=window.winfo_screenheight()窗体的起点位置总结强调1、掌握窗体的居中显示的计算方法winfo_screenwidth()Winfo_screenheight()2、使用cmd独立打开gui的py软件Pythonw后台解释器,忽律所有的print输出和报错Python解释器,好处就是可以试试看到print输出,建议debug调试时候使用订阅/关注/点赞编程零基础Python教程#062实战字符ascii码转换复习1、字符替换制作替换表maketrans(老的字符,新的字符,[需要被删除的字符])使用translate函数来进行替换Ord函数作用:将字符转为ascii码格式:ord(“字符”)返回对应的ascii码值举例:print(ord("A"))chr函数作用:将ascii码转为对应的字符格式:chr(ascii码的数值)返回对应的ascii码字符案例:打印所有的asciiforvinrange(128):print(chr(v),end="刘")GUI使用tkinter来转为ascii码字符1、导入tk库2、调用Tk()函数返回tk窗体对象3、设置标题和窗体配置4、制作gui的控件来布局5、定义点击函数总结强调1、ord函数将字符转ascii2、chr函数将a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年模具工职业技能理论知识考试题(附答案)
- 灭火器操作使用培训课件
- 塑料制品生产项目环评报告
- 潜意识培训课件
- 2026山东大学齐鲁第二医院院前急救科医师岗位(非事业编制)招聘2人备考题库附参考答案详解(达标题)
- 员工自我评价总结【五篇】
- 班主任基本功竞赛情景问题现场答辩及答案
- 2026年电子商务实操能力认证考试题及答案
- 2026广东江门市建设工程检测中心有限公司招聘2人备考题库附答案详解(巩固)
- 2025年米脂县招教考试备考题库含答案解析(必刷)
- 2026中国电信四川公用信息产业有限责任公司社会成熟人才招聘备考题库及参考答案详解1套
- 2024年国企行测题库
- 烟囱技术在血管腔内修复术中的应用
- 岗位聘用登记表
- 2023年全国统一高考政治试卷(新课标ⅰ)(含解析版)
- 2023年北京高考语文答题卡(北京卷)word版可编辑kh
- 2023年高铁信号车间副主任述职报告
- GB/T 5762-2012建材用石灰石、生石灰和熟石灰化学分析方法
- 第3章 圆锥曲线的方程【精简思维导图梳理】高考数学高效备考 人教A版2019选择性必修第一册
- 刘一秒演说智慧经典(内部笔记)
- 管道TOFD检测记录及续表
评论
0/150
提交评论