zoukankan      html  css  js  c++  java
  • tkinter中布局pack、place和grid(八)

    tkinter中布局pack、place和grid

    pack布局

    复制代码
     1 import tkinter
     2 
     3 wuya = tkinter.Tk()
     4 wuya.title("wuya")
     5 wuya.geometry("300x200+10+20")
     6 
     7 
     8 # fill控制填充方式
     9 lb1 = tkinter.Label(wuya,
    10                    text='wuya good good study',
    11                    bg='red',
    12                     )
    13 lb1.pack(fill=tkinter.X)
    14 
    15 
    16 # padding 控制边距,如果不设置则默认为0
    17 # padx,设置x方向的外边距,pady设置y方向的外边距
    18 lb2 = tkinter.Label(wuya,
    19                    text='wuyaa',
    20                    bg='green',
    21                     )
    22 lb2.pack(fill=tkinter.X,padx=10,pady=3)
    23 # ipadx,设置x方向的外边距,pady设置y方向的外边距
    24 lb3 = tkinter.Label(wuya,
    25                    text='wuyab',
    26                    bg='blue',
    27                     )
    28 lb3.pack(fill=tkinter.X,ipadx=10,ipady=3)
    29 
    30 
    31 # side 为依次放置
    32 lb4 = tkinter.Label(wuya,
    33                    text='wuya1',
    34                    bg='yellow',
    35                     )
    36 lb4.pack(side='left')
    37 lb4 = tkinter.Label(wuya,
    38                    text='wuya2',
    39                    bg='pink',
    40                     )
    41 lb4.pack(side='left',padx=3)
    42 
    43 wuya.mainloop()
    复制代码

    结果:

    place布局

    比较好理解,直接以所在的窗口的左上角为(0,0)开始计算,x为横向的尺寸,y为纵向的尺寸,然后设置显示的宽和高

    复制代码
     1 import tkinter
     2 
     3 wuya = tkinter.Tk()
     4 wuya.title("wuya")
     5 wuya.geometry("300x200+10+20")
     6 
    43 lb1 = tkinter.Label(wuya,
    44                    text='wuya good good study',
    45                    bg='red',
    46                     )
    47 lb1.place(x=10,y=10,width=200,height=120)
    48 
    49 lb2 = tkinter.Label(wuya,
    50                    text='wuya good good study',
    51                    bg='green',
    52                     )
    53 lb2.place(x=220,y=140,width=20,height=12)
    54 
    55 wuya.mainloop()
    复制代码

    结果为:

    grid布局

    复制代码
     1 import tkinter
     2 
     3 wuya = tkinter.Tk()
     4 wuya.title("wuya")
     5 wuya.geometry("300x200+10+20")
     6 
     7 citys = {'001':'beijing',
     8          '002':'shanghai',
     9          '111':'tianjing',
    10          '212':'xizang'}
    11 i = 0
    12 for item in citys:
    13     lb1 = tkinter.Label(wuya, text=item,relief=tkinter.RIDGE,width=15,fg='blue')
    14     lb1.grid(row=i,column=0)
    15     lb2 = tkinter.Label(wuya,text=citys[item],relief=tkinter.SUNKEN,width=15,fg='red')
    16     lb2.grid(row=i,column=1)
    17     i = i + 1
    18 
    19 wuya.mainloop()
    复制代码

    row表示行,第几行。column表示列,第几列。计算的时候都是从0开始的

    结果为:

  • 相关阅读:
    【BZOJ4637】期望 Kruskal+矩阵树定理
    IEnumerable是什么
    (转)IIS windows认证
    使用pgrouting进行最短路径搜索
    Nginx设置防止IP及非配置域名访问
    java 调用c# web api 代码
    一台机器部署多个tomcat服务 nginx反向代理多个服务 笔记
    利用Kettle 从Excel中抽取数据写入SQLite
    sql server 统计信息
    sql server 索引碎片相关问题
  • 原文地址:https://www.cnblogs.com/anita-harbour/p/9315464.html
Copyright © 2011-2022 走看看