在很久之前,我發過一篇《tkinter模塊常用參數》,里面已經幾乎涵蓋了tkinter的大部分教程。
好吧,其實也就是上一篇而已啦。
所謂布局,就是指控制窗體容器中各個控件(組件)的位置關系。
tkinter 共有三種幾何布局管理器,分別是:pack布局,grid布局,place布局:
“Grid”兼具功能,靈活性和易用性,以及它與當今布局的自然匹配(依賴於小部件的對齊)使其成為一般用途的最佳選擇;
“pack”也非常強大,但更難以使用和理解;
“place”讓您完全控制每個元素的定位;
我們甚至可以看到像窗格,筆記本,畫布和文本這樣的小部件可以充當幾何管理器。
所以,這一篇我們就只講一個管理器就夠了——grid(網格)布局管理器。
grid屬性設置:
屬性名 | 屬性簡析 | 取值說明 |
---|---|---|
row、column | row為行,column為列 | 從0開始 |
rowspan | 組件所跨越的行數 | |
columnspan | 組件所跨越的列數 | |
ipadx、ipady、padx、pady | 組件的內部、外部間隔距離,默認是0 | 非負整數,單位為像素 |
in_ | w2必須是w創建時指定父插件的子插件 | 用in_=w2可以將w登記為w2的child插件 |
sticky | 對齊方式,默認居中 | 東南西北中九方向+ |
grid類的函數(使用組件實例對象調用):
函數名 | 描述 |
---|---|
grid_slaves() | 以列表方式返回本組件的所有子組件對象 |
grid_configure(option=value) | 給gird布局管理器設置屬性,使用屬性(option)= 取值(value)方式設置 |
grid_propagate(boolean) | 設置為True表示父組件的幾何大小由子組件決定(默認值),反之則無關 |
grid_info() | 返回gird提供的選項所對應得值 |
grid_forget() | Unpack組件,將組件隱藏並且忽略原有設置,對象依舊存在,可以用gird(option, …)將其顯示 |
grid_remove() | |
grid_location(x, y) | x, y為以像素為單位的點,返回單元格行列坐標,(-1, -1)表示不在其中 |
size() | 返回組件所包含的單元格,揭示組件大小 |
調用結果如下: