最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python GUI編程學習筆記之tkinter界面布局顯示詳解

 更新時間:2020年03月30日 11:06:36   作者:隨風行云  
這篇文章主要介紹了Python GUI編程學習筆記之tkinter界面布局顯示,結合實例形式分析了Python GUI編程中tkinter界面布局顯示的相關操作技巧與使用注意事項,需要的朋友可以參考下

本文實例講述了Python GUI編程學習筆記之tkinter界面布局顯示。分享給大家供大家參考,具體如下:


相關內容:

  • pack
    • 介紹
    • 常用參數
    • 使用情況
    • 常用函數
  • grid
    • 介紹
    • 常用參數
    • 使用情況
    • 常用函數
  • place
    • 介紹
    • 常用參數
    • 使用情況
    • 常用函數

首發(fā)時間:2018-03-04 14:20


pack:

    • 介紹:
      • pack幾何管理器按行或列打包小部件。 可以使用填充fill,展開expand和靠邊side等選項來控制此幾何體管理器。
      • pack的排放控件的形式就像將一個個控件按大小從上到下放過去
      • 在窗口不設定大小的而使用pack進行布局的情況下,窗口默認大小為剛好包裹所有控件的大小
      • 默認情況下添加的控件是居中且占據整行的
    • 常用參數:
      • fill:填充分配給控件的空間,fill:X為填充X軸方向,Y為Y軸方向,BOTH為X+Y
      • expand:先按普通標準來規(guī)定控件大小,如果后面窗口還剩下空間,那么會分給那些expand=True的控件,如圖中是兩個不同大小的按鈕,其中2expand=Trueimage_thumb[4] ,當使用expand=True時,side將不會生效!
      • side:使控件靠窗口的指定方向并排,side可取值LEFT,RIGHT,TOP,BOTTOM.image_thumb3[1]
      • anchor:對齊方式,可取值“n”, “s”, “w”, “e”, “nw”, “sw”, “se”, “ne”, “center”(默認為” center”)image_thumb[5]
      • ipadx, ipady:內邊距
      • padx,pady:外邊距
    • 適用情況:與gird相比,pack有一定的局限性,但在一些但很常見的情況下使用起來要容易得多:
      • 將一個小部件放入一個框架(或任何其他容器小部件)中,并讓它填充整個框架
      • 將多個小部件放在一起
      • 并排放置一些小部件
    • 補充:
      • 常用函數:
        • pack_propagate(flag):由窗口調用來配置pack控件時窗口的大小,當flag=0時,那么窗口大小將不再僅僅包裹住所有控件,這時候窗口的高度和寬度設置才可以生效
        • pack_forget():移除控件,但并沒有進行摧毀,可以再次使用pack或其他方式來顯示
        • pack_info():返回pack提供的選項所對應得值。
        • pack_slaves():以列表方式返回本組件的所有子組件對象。
from tkinter import *
root=Tk()

# for i in range(10):
  ##side
  # btn = Button(text=i)
  # btn.pack(side=LEFT)
  # btn.pack(side=RIGHT)
  # btn.pack(side=(TOP,LEFT))

  ####fill
  # btn.pack(fill=X)
  # btn.pack(side=LEFT,fill=Y)
  # btn.pack(fill=BOTH)

##expand
# btn1=Button(text=1,bg='green')
# btn2=Button(text=2,bg='yellow')
# btn1.pack(fill=X)
# btn2.pack(expand=True)
#anchor:
# btn1=Button(text=1,bg='green')
# btn2=Button(text=2,bg='yellow')
# btn1.pack(fill=X)
# btn2.pack(anchor=E)

#pack_propagete
# btn1=Button(text=1,bg='green')
# btn2=Button(text=2,bg='yellow')
# root.pack_propagate(0)
# btn1.pack()
# btn2.pack()

#pack_forget:
# import time,threading
# label=Label(text="警告!")
# label.pack()
# def run():
#   start_time=time.time()
#   while True:
#     if time.time()-start_time>3:
#       label.pack_forget()
#       break
# t=threading.Thread(target=run)
# t.setDaemon(True)
# t.start()

root.mainloop()

grid:

    • 介紹:grid是格子的意思,grid可以將控件區(qū)塊式擺放.image_thumb4
    • 常用參數:
      • row: 行號,區(qū)分不同控件是否處于同一行
      • column: 列號,區(qū)分不同控件是否處于同一列
      • sticky: 決定控件的貼靠方向,該選項從集合N,S,E,W [東南西北的意思],中取一個或多個值。比如要將標簽與左邊框對齊,可以使用W(西)image_thumb[1]image_thumb[2]
      • rowspan:行跨度,決定某個控件占的行數 ,默認一行
      • columnspan:列跨度,決定某個控件占的列數,默認一列
      • ipadx, ipady:內邊距
      • padx,pady:外邊距
    • 適用情況:
      • 設計對話框的時候特別方便
      • 區(qū)塊化擺放的時候
    • 補充:
      • 常用函數:
        • grid_forget :移除控件,但并沒有進行摧毀,可以再次使用grid或其他方式來顯示 [grid_remove有同樣作用]
        • grid_propagete

          :由窗口調用來配置pack控件時窗口的大小,當flag=0時,那么窗口大小將不再僅僅包裹住所有控件,這時候窗口的高度和寬度設置才可以生效
        • grid_slaves():以列表方式返回本組件的所有子組件對象。

from tkinter import *

root=Tk()
root.title("我的窗口")
label_user=Label(text='用戶名:',bg='green')
label_pwd=Label(text='密碼:',bg='green')
user=Entry()
pwd=Entry()
# row,column,sticky
label_user.grid(row=0,column=0,sticky=W) #一個有sticky,一個沒有sticky,以作區(qū)分
label_pwd.grid(row=1,column=0)
# rowspan,columnspan
user.grid(row=0,column=1)
pwd.grid(row=1,column=1)
btn=Button(text="提交")
btn.grid(row=0,column=3,rowspan=2,columnspan=2,padx=5, pady=5)
# 下面主要是將第一列拉大來顯示上面sticky的效果
v=IntVar()
check=Checkbutton(text="下次自動登錄",variable=v,)
check.grid(row=2,column=0,sticky=W)


# _forget:
import time,threading
label=Label(text="歡迎登錄!",bg='blue')
label.grid()
def run():
  start_time=time.time()
  while True:
    if time.time()-start_time>3:
      label.grid_forget()
      break
t=threading.Thread(target=run)
t.setDaemon(True)
t.start()



root.mainloop()

place:

    • 介紹:可以使用絕對的位置或相對位置來擺放控件。 conn_thumb conn2[3]_thumb
    • 常用參數:
      • x:控件在窗口中的x坐標
      • y:控件在窗口中的y坐標conn2_thumb
      • relx,rely:與主窗口的相對位置,比如image_thumb[3]
      • relwidth,relheight:相對大小,比如height=0.5,width=0.5時控件占據窗口的四分之一大小
    • 適用情況:
      • 自定義顯示方式
      • 將按鈕定位在對話框中
    • 補充:
      • 常用函數:
        • place_forget():移除控件,但并沒有進行摧毀,可以再次使用place或其他方式來顯示
        • place_slaves():以列表方式返回本組件的所有子組件對象。[slaves()具有同樣功能]
        • place_info():返回place提供的選項所對應得值。
from tkinter import *

root=Tk()
root.geometry('100x100')
label=Label(text="用戶名:",bg='green')
entry=Entry()
label.pack(fill=X)
#x,y
# entry.place(x=0,y=0)

#relx,rely
# entry.place(relx=0.3, rely=0.3)
# entry.place(relx=0.5, rely=0.5)

#relheight,relwidth
# entry.place(relx=0.5, rely=0.5,relheight=0.5,relwidth=0.5)

#_forget:
import time,threading
label2=Label(text="警告!",bg='blue')
label2.place(relx=0.2,rely=0.2)
def run():
  start_time=time.time()
  while True:
    if time.time()-start_time>3:
      label2.place_forget()
      break
t=threading.Thread(target=run)
t.setDaemon(True)
t.start()

root.mainloop()

想要了解更多,可以參考tkinter的官方文檔:http://effbot.org/tkinterbook/

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python Socket編程技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設計有所幫助。

相關文章

  • python讀取Windows注冊表的示例代碼

    python讀取Windows注冊表的示例代碼

    本文主要介紹了python讀取Windows注冊表的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • Anaconda切換python版本常見的幾種實現方法

    Anaconda切換python版本常見的幾種實現方法

    最近用Anaconda比較多,因為它里面的包很全啊,下面這篇文章主要介紹了Anaconda切換python版本常見的幾種實現方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-08-08
  • python實現數據寫入excel表格

    python實現數據寫入excel表格

    這篇文章主要為大家詳細介紹了python實現數據寫入excel表格,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • 使用Python打包程序并制作Windows安裝程序的超完整指南

    使用Python打包程序并制作Windows安裝程序的超完整指南

    這篇文章主要介紹了Python腳本打包為Windows可執(zhí)行文件(.exe),并使用InnoSetup制作帶有安裝向導的安裝程序,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-02-02
  • python批量實現Word文件轉換為PDF文件

    python批量實現Word文件轉換為PDF文件

    這篇文章主要為大家詳細介紹了python批量實現Word文件轉換為PDF文件的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Conda與Python?venv虛擬環(huán)境的區(qū)別與使用方法詳解

    Conda與Python?venv虛擬環(huán)境的區(qū)別與使用方法詳解

    隨著Python社區(qū)的成長,虛擬環(huán)境的概念和技術也在不斷發(fā)展,這篇文章主要介紹了Conda與Python?venv虛擬環(huán)境的區(qū)別與使用方法的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-07-07
  • Python實現GIF動圖加載和降幀的方法詳解

    Python實現GIF動圖加載和降幀的方法詳解

    這篇文章主要為大家詳細介紹了如何利用Python和Pygame實現GIF動圖加載和降幀的效果,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2023-02-02
  • Python實現一個簡單的QQ截圖

    Python實現一個簡單的QQ截圖

    大家好,本篇文章主要講的是Python實現一個簡單的QQ截圖,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下的相關資料
    2022-02-02
  • Python裝飾器詳細介紹

    Python裝飾器詳細介紹

    這篇文章主要介紹了Python裝飾器詳細講解,包括裝飾器的功能及實現方法,通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2022-03-03
  • 深入理解?python?虛擬機

    深入理解?python?虛擬機

    這篇文章主要介紹了深入理解?python?虛擬機的相關資料,需要的朋友可以參考下
    2023-04-04

最新評論

清远市| 凤山县| 隆尧县| 黄山市| 浮梁县| 庆安县| 扎囊县| 平江县| 化州市| 廊坊市| 仲巴县| 呼和浩特市| 简阳市| 滨海县| 岳阳县| 荥经县| 甘肃省| 霍林郭勒市| 沐川县| 临沧市| 富源县| 西乡县| 峨边| 阿拉善盟| 台前县| 玉环县| 永福县| 高雄县| 冀州市| 枣强县| 泸水县| 阳山县| 靖安县| 招远市| 旅游| 开平市| 蒙山县| 开化县| 凉城县| 云龙县| 定兴县|