FlexGridSizer是GridSizer的一個更靈活的版本。它與标準的GridSizer幾乎相同,除了下面3點例外: 1、每行和每列可以有各自的尺寸。
2、預設情況下,當尺寸調整時,它行和列整體改變尺寸。是以,如果需要的話,你可以指定哪行或哪列應該增長。
3、它可以在兩個方向靈活地增長,意思是你可以為個别的子元素指定比列量,并且你可以指定固定方向增長上的行為。
1. 構造函數:
參數: rows 定義GridSizer 行數
cols 定義GridSizer 列數
vgap 定義垂直方向上行間距
hgap 定義水準方向上列間距
2. FlexGridSizer的常用函數
AddGrowableCol(idx, proportion=0) 設定索引為idx的列為可增長列
AddGrowableRow(idx, proportion=0) 設定索引為idx的行為可增長行
參數:proportion=0 為預設,表示所有的可增長行或列 按照同比列縮放。如果要指定不一樣的縮放比例,那麼需要手動設定proportion 值。例如,如 果你有兩個尺寸可調整的行,并且它們的proportion分别是2和1,那麼這第一個行将得到新空間的2/3,第二行将得到 1/3。
例子:
運作結果:
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiInBnauMTNyQzQZ9WR6FEeCFUQXJnaslncwETMTFDTvl2S39CXBlzLchTNvwVMw00LcJDMzZWe39CXt92Yu8GdjFTNuMzcvw1LcpDc0RHaiojIsJye.jpg)