• tkinter的三种几何布局管理类


    1.pack()

      主要采用块的方式组织子组件

    如下:

    import tkinter

    root=tkinter.Tk()        #创建窗口对象

    label=tkinter.Label(root,text='hello,python')    #创建标签对象

    label.pack()     #将label组件添加到窗口中显示

    button1=tkinter.Button(root,text='BUTTON1')   #创建按钮对象

    button1.pack(side=tkinter.LEFT)     #将button1组件添加到窗口中显示,左停靠

    button2=tkinter.Button(root,text='BUTTON2')

    button2.pack(side=tkinter.RIGHT)

    root.mainloop()    #显示窗口

    效果如下:

    2.grid()

      采用表格结构组件子组织,它的两重要参数:row和column

    例子:计算器示例

    from tkinter import *
    root=Tk()
    root.geometry('200x200+280+280') #设置窗口大小
    root.title('计算器示例')
    L1=Button(root,text='1',width=5,bg='yellow')
    L2=Button(root,text='2',width=5)
    L3=Button(root,text='3',width=5)
    L4=Button(root,text='4',width=5)
    L5=Button(root,text='5',width=5,bg='green')
    L6=Button(root,text='6',width=5)
    L7=Button(root,text='7',width=5)
    L8=Button(root,text='8',width=5,bg='yellow')
    L9=Button(root,text='9',width=5)
    L0=Button(root,text='0')
    Lp=Button(root,text='.')
    L1.grid(row=0,column=0) #按钮放在0行0列
    L2.grid(row=0,column=1)
    L3.grid(row=0,column=2)
    L4.grid(row=1,column=0)
    L5.grid(row=1,column=1)
    L6.grid(row=1,column=2)
    L7.grid(row=2,column=0)
    L8.grid(row=2,column=1)
    L9.grid(row=2,column=2)
    L0.grid(row=3,column=0,columnspan=2,sticky=E+W)
    Lp.grid(row=3,column=2,sticky=E+W)
    root.mainloop() #显示窗口
    效果如下:

    3.place()

      允许指定组件的大小与位置,缺点是:改变窗口大小时组件不能随之灵活地改变大小.

    例:

    from tkinter import *
    root=Tk()
    root.title('登录')
    root['width']=200;root['height']=80         #初始化窗口大小
    Label(root,text='用户名',width=6).place(x=1,y=1)  #绝对坐标1,1
    Entry(root,width=20).place(x=45,y=1) #输入控件对象大小及坐标
    Label(root,width=20).place(x=45,y=1)
    Label(root,text='密码',width=6).place(x=1,y=20)
    Entry(root,width=20,show='*').place(x=40,y=20)
    Button(root,text='登录',width=8).place(x=40,y=40)
    Button(root,text='取消',width=8).place(x=110,y=40)
    root.mainloop()
    效果如下:

  • 相关阅读:
    ACM——完数
    基于图片的信息隐藏与显示
    ACM——数的计数
    ACM——A + B Problem (2)
    ACM——简单排序
    ACM——回文
    ACM——圆柱体的表面积
    ACM——进制转换
    ACM——线性表操作
    this的理解
  • 原文地址:https://www.cnblogs.com/dbslinux/p/11520415.html
Copyright © 2020-2023  润新知