



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Tkinter教程之Place篇1.使用绝对坐标将组件放到指定的位置# -*- coding: cp936 -*-# 不设置root的大小,使用默认from Tkinter import *root = Tk()lb = Label(root,text = hello Place)# lb.place(relx = 1,rely = 0.5,anchor = CENTER)# 使用绝对坐标将Label放置到(0,0)位置上lb.place(x = 0,y = 0,anchor = NW)root.mainloop()# x,y指定组件放置的绝对位置2.使用相对坐标放置组件位置# -*- coding: cp936 -*-# 不设置root的大小,使用默认from Tkinter import *root = Tk()lb = Label(root,text = hello Place)# lb.place(relx = 1,rely = 0.5,anchor = CENTER)# 使用相对坐标(0.5,0.5)将Label放置到(0.5*sx,0.5.sy)位置上lb.place(relx = 0.5,rely = 0.5,anchor = CENTER)root.mainloop()# relx,rely指定组件放置的绝对位置,范围为(0-1.0)3.使用place同时指定多个组件# -*- coding: cp936 -*-# 不设置root的大小,使用默认from Tkinter import *root = Tk()root.geometry(800x600)lb = Label(root,text = hello Place)# lb.place(relx = 1,rely = 0.5,anchor = CENTER)# 使用相对坐标(0.5,0.5)将Label放置到(0.5*sx,0.5.sy)位置上v = IntVar()for i in range(5):Radiobutton(root,text = Radio + str(i),variable = v,value = i).place(x = 80* i,anchor = NW)root.mainloop()# 使用place来指定各个Radiobutton的位置4.同时使用相对和绝对坐标# 同时设置relx,rely和x,y的值# -*- coding: cp936 -*-# 不设置root的大小,使用默认from Tkinter import *root = Tk()root.geometry(800x600)lb1 = Label(root,text = hello Place,fg = green)lb2 = Label(root,text = hello Place,fg = red)# 先设置相对坐标为(0.5,0.5),再使用(-200,-200)将坐标作偏移(-200,-200)lb1.place(relx = 0.5,rely = 0.5,anchor = CENTER,x = -200,y = -200)# 先设置相对坐标为(0.5,0.5),再使用(-300,-300)将坐标作偏移(-300,-300)lb2.place(relx = 0.5,rely = 0.5,anchor = CENTER,x = -300,y = -300)root.mainloop()# 同时使用相对和绝对坐标时,相对坐标优先操作,然后是在这个相对坐标的基础上进行偏移5.使用in来指定放置的容器# -*- coding: cp936 -*-# 使用in属性来指定放置到的容器是那一个from Tkinter import *root = Tk()root.geometry(800x600)lb1 = Label(root,text = hello Place,fg = green)bt1 = Button(root,text = hello Place,fg = red)# 创建一个Labellb1.place(relx = 0.5,rely = 0.5,anchor = CENTER)# 在root同创建一个Button,目的是与bt1相比较bt2 = Button(root,text = button in root,fg = yellow)bt2.place(anchor = W)# 在Label中创建一个Buttonbt1.place(in_ = lb1,anchor = W)root.mainloop()# 注意bt2放置的位置是在root的(0,0)处,而button1放置的位置是在lb1的(0,0)处,原因是由于bt1使用了in来指定放置的窗口为lb16.深入in用法# -*- coding: cp936 -*-# 使用in属性来指定放置到的容器是那一个,仅能是其masterfrom Tkinter import *root = Tk()# root.geometry(800x600)# 创建两个Frame用作容器fm1 = Frame(root,bg = red,width = 40,height = 40)fm2 = Frame(root,bg = blue,width = 40,height = 40)# 再在fm1中创建一个fm3fm3 = Frame(fm1,bg = yellow,width = 20,height = 20)# 创建一个Label,它的master为fm1lb1 = Label(fm1,text = hello Place,fg = green)lb1.place(in_ = fm1,relx = 0.5,rely = 0.5,anchor = CENTER)# 创建一个Button,它的master为fm1bt1 = Button(fm1,text = hello Place,fg = red)# 将bt1放置到fm2中,程序报错# 去掉下面这条语句就可以使用了,可以看到lb1已经正确的放置到fm1的中心位置了# bt1.place(in_ = fm2,anchor = W)# 将上面的语句改为下面,即将bt1放置到其fm1的子组件fm3中,这样也是可以的bt1.place(in_ = fm3,anchor = W)fm1.pack()fm2.pack()fm3.pack()root.mainloop()# in不是可以随意指定放置的组件的,如果使用in这个参数这个组件必需满足:是其父容器或父容器的子组件7.事件与Place结合使用# -*- coding: cp936 -*-# 最后使用两个place方法来动态改变两个Frame的大小。from Tkinter import *root = Tk()split = 0.5fm1 = Frame(root,bg = red)fm2 = Frame(root,bg = blue)# 单击fm1时增大它的占有区域0.1def incFm1(event):global splitif split 0:split -= 0.1fm1.place(rely = 0,relheight = split,relwidth = 1)fm2.place(rely = split,relheight = 1 - split,relwidth = 1)# 这两语句要使用,不然开始看不到两个frame,也就没法点击它们了fm1.place(rely = 0,relheight = split,relwi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年电子设备行业可穿戴设备市场前景分析报告
- 2025年区块链金融行业技术应用与市场前景研究报告
- 2025年科技行业区块链应用前景研究报告
- 2025年医疗美容行业美容器械市场前景展望报告
- 2025年电子科技行业发展前景与趋势预测报告
- 2025年金融科技在区块链应用中的前景分析报告
- 北京市2025北京怀柔区事业单位招聘95人笔试历年参考题库附带答案详解
- 临汾市2025山西临汾市浮山县招聘事业单位人员90人笔试历年参考题库附带答案详解
- 2025辽宁鞍山市台安绿洁创能生态科技有限公司招聘6人笔试参考题库附带答案详解
- 2025航天六院内蒙古航天红峡化工有限公司招聘30人笔试参考题库附带答案详解
- 云南学法减分题库及答案
- 幼儿园大班数学活动《4的分解与组合》课件
- 江苏省制造业领域人工智能技术应用场景参考指引2025年版
- 三级医师查房制度考试题(含答案)
- 文旅公司考试试题及答案
- 2025至2030年中国公立医院行业发展监测及市场发展潜力预测报告
- 2025年全国翻译专业资格(水平)考试土耳其语三级笔译试卷
- 人工智能技术在网络安全威胁检测中的应用
- 2025内蒙古民族大学招聘管理助理、教学助理50人笔试模拟试题及答案解析
- 2025年麻醉、第一类精神药品管理培训考核试题及答案(护士卷)
- 胃肠镜报告的解读
评论
0/150
提交评论