place方法
这是使用直接指定方式将Widget控件放在容器(可想成窗口)中的方法。这个方法的语法格式如下:
place(options,···)
options参数可以是height/width、relx/rely、x/y、relheight/relwidth、bordermode、anchor。
x/y参数
place()方法内的x和y参数可直接设定窗口组件的左上方位置,单位是像素。
窗口显示区的左上角是(x=0,y=0),x是向右递增,y是向下递增。同时使用这种
方法时,窗口将不会自动重设大小而是使用默认的大小显示。
from tkinter import *
window=Tk()
window.title("ch3_36")
''
lab1=Label(window,text="明志科技大学",
bg="lightyellow",
width=15)
lab2=Label(window,text="长庚大学",
bg="lightgreen",
width=15)
lab3=Label(window,text="长庚科技大学",
bg="lightblue",
width=15)
lab1.place(x=0,y=0)
lab2.place(x=30,y=50)
lab3.place(x=60,y=100)
window.mainoloop()
width/height参数
有时候在设计窗口应用程序时,所预留的空间有限,如果想要将图片插入窗口内,却担心图片太大,可以在插入
图片时同时设定图片的大小,此时可以使用width/height参数,这两个参数可以直接设定Widget控件的实体大小。
from tkinter import *
window=Tk()
window.title("ch3_37")
''
root.geometry("640x480")
night=PhotoImage(file="night.png")
lab1=Label(window,image=night)
lab1.place(x=20,y=30,widht=200,height=120)
snow=PhotoImage(file="snow.png")
lab2=Label(window,image=snow)
lab2.place(x=200,y=300,widht=400,height=240)
root.mainloop()
relx/rely参数与relwidth/relheight参数
relx/rely可以设置相对于父容器(可想成父窗口)的位置,relwidth/relheight设置相对大小。
这个相对位置与相对大小是相对于父窗口而言,其值为0.0~1.0。
样例:将图片night.png从相对位置(0.1,0.1)开始放置,相对大小是(0.8,0.8)。
from tkinter import *
window=Tk()
window.title("ch3_38")
''
root.geometry("640x480")
night=PhotoImage(file="night.png")
lab1=Label(window,image=night)
lab1.place(relx=0.1,rely=0.1,relwidht=0.8,relheight=0.8)
root.mainloop()
在设计时,如果参数的某个相对大小未设定(可能是relwidth或relheight),未设置的部分将
以实际大小显示,此时可能需要放大窗口宽度才可以显示。
网友评论