✨✨✨
感谢优秀的你打开了小白的文章
“希望在看文章的你今天又进步了一点点,离美好生活更近一步!”🌈
place 布局管理器
place 布局管理器可以通过坐标精确控制组件的位置。
place()方法的选项
简单布局管理
# coding=utf-8from tkinter import *root = Tk();root.geometry("500x300")root.title("place");root["bg"]="white"f1 = Frame(root,width=200,height=200,bg="pink")f1.place(x=30,y=30)Button(root,text="小白").place(relx=0.2,x=100,y=20,relwidth=0.2,relheight=0.5)Button(f1,text="加油").place(relx=0.2,rely=0.7)Button(f1,text="进步中").place(relx=0.3,rely=0.2)root.mainloop()
结果:
扑克牌界面设计
from tkinter import *class Application(Frame):def __init__(self, master=None):super().__init__(master) self.master = masterself.pack()self.createWidget()def createWidget(self):"""通过place布局管理器实现扑克牌位置控制"""self.photos = [PhotoImage(file="imgs/puke/puke"+str(i+1)+".gif") for i in range(10)]self.pukes = [Label(self.master,image=self.photos[i]) for i in range(10)]for i in range(10):self.pukes[i].place(x=10+i*40,y=50)self.pukes[0].bind_class("Label","<Button-1>",self.chupai)def chupai(self,event):print(event.widget.winfo_geometry())print(event.widget.winfo_y())if event.widget.winfo_y() == 50:event.widget.place(y=30)else:event.widget.place(y=50)if __name__ == '__main__':root = Tk()root.geometry("600x270+200+300")app = Application(master=root)root.mainloop()
结果展示