布局篇 Grid布局

2021-06-08 20:54:26 字數 2699 閱讀 4842

特點:

1)可以定義任意數量的行和列

2)行的高度和列的寬度可以使用絕對值、相對比例或自動調整的方式,可設定最大值和最小值

3)內部元素可以設定自己所在的行、列,還可以設定跨越幾行、幾列

4)可以設定內部元素的對齊方向

grid類具有columndefinitions和rowdefinitions兩個屬性,它們分別是columndefinition和rowdefinition的集合,表示grid定義了多少列、多少行,下面這段**定義了乙個3行4列的**

[html]view plain

copy

print?

<

grid

>

<

grid.rowdefinitions

>

<

rowdefinition

height="*"

/>

<

rowdefinition

height="20"

/>

<

rowdefinition

height="*"

/>

grid.rowdefinitions

>

<

grid.columndefinitions

>

<

columndefinition

width="*"

/>

<

columndefinition

width="30"

/>

<

columndefinition

width="*"

/>

<

columndefinition

width="*"

/>

grid.columndefinitions

>

grid

>

對於grid 的行高和列寬,可以設定3類值:

1)絕對值:double數值加單位字尾,預設為畫素

2)比例值:double數值後加*

3)自動值:字串auto

設定內部控制項的起始行用grid.row屬性,起始列用grid.column屬性,跨越行使用grid.rowspan屬性,跨越列使用grid.columnspan屬性

上面**結果如下

如果希望列寬可以拖動,grip布局本身是不支援的,需要用grid布局加上gridsplitter來實現,gridsplitter會改變grid初始的行高、列寬,**如下

[html]view plain

copy

print?

<

grid

>

<

grid.rowdefinitions

>

<

rowdefinition

height="25"

>

rowdefinition

>

<

rowdefinition

>

rowdefinition

>

grid.rowdefinitions

>

<

grid.columndefinitions

>

<

columndefinition

width="150"

>

columndefinition

>

<

columndefinition

width="auto"

>

columndefinition

>

<

columndefinition

>

columndefinition

>

grid.columndefinitions

>

<

textbox

grid.row="0"

grid.column="0"

grid.columnspan="3"

borderbrush="black"

/>

<

textbox

grid.row="1"

grid.column="0"

borderbrush="black"

/>

<

gridsplitter

grid.row="1"

grid.column="1"

verticalalignment="stretch"

horizontalalignment="center"

width="5"

background="gray"

showspreview="true"

>

gridsplitter

>

<

textbox

grid.row="1"

grid.column="2"

borderbrush="black"

/>

grid

>

布局管理之Grid布局

tkinter grid常用選項 column 指定將元件放入哪列,第一列的索引為 0。columnspan 指定元件橫跨多少列。row 指定元件放入哪行,第一行的索引為 0。rowspan 指定元件橫跨多少行。sticky 對齊方式,類似 pack 方法的 anchor 選項,同樣支援 n e s...

Grid布局(網格布局)

網格布局 grid 是 css 中乙個布局方案。它將網頁劃分成乙個個網格,可以任意組合不同的網格,做出各種各樣的布局。以前,只能通過複雜的 css 框架達到的效果,現在瀏覽器內建了。下面這樣的布局,就是grid布局。grid 布局與 flex 布局有一定的相似性,都可以指定容器內部多個專案的位置。但...

網格布局(grid布局)

他可以將頁面分為多個網格,可以任意組合不同的網格 做出各種各樣的布局。網格布局為二維性質的。grid row gap 1rem 行間距 grid column gap 1rem 列間距 grid gap 1rem 設定行列間距 grid template columns 列寬和列數 grid tem...