Wxpython-wx-gridsizer
提供:Dev Guides
wxPython-GridSizer
名前が示すように、 GridSizer オブジェクトは2次元のグリッドを表します。 コントロールは、左から右、上から下の順にグリッドスロットに追加されます。 GridSizerオブジェクトは4つのパラメータを取ります-
wx.GridSizer(rows, columns, vgap, hgap)
vgapおよびhgapパラメーターは、隣接するコントロール間の垂直および水平間隔を制御します。
次の表は、wxGridSizerクラスのいくつかの重要なメソッドを示しています-
S.N. | Methods & Description |
---|---|
1 |
Add() 次に利用可能なグリッドスロットにコントロールを追加します |
2 |
AddMany() コントロールのリストに各アイテムを追加します |
3 |
SetRows() サイザーの行数を設定します |
4 |
GetRows() サイザー内の行数を取得します |
5 |
SetCols() サイザーの列数を設定します |
6 |
GetCols() サイズの列数を取得します |
7 |
SetVGap() セル間の垂直ギャップ(ピクセル単位)を設定します |
8 |
GetVGap() セル間のvgapの値を返します |
9 |
SetHGap() セル間の水平方向の間隔(ピクセル単位)を設定します |
10 |
GetHGap() セル間のhgapの値を返します |
次のコードは、縦横の間隔が5ピクセルの4 x 4グリッドの単純なグリッドサイザーを示しています。
Gs = wx.GridSizer(4, 4, 5, 5)
「for」ループを使用して、16個のボタンオブジェクトが連続して追加されます。
for i in range(1,17):
btn = "Btn"+str(i)
gs.Add(wx.Button(p,label = btn),0,wx.EXPAND)
完全なコードは次のとおりです-
import wx
class Example(wx.Frame):
def __init__(self, parent, title):
super(Example, self).__init__(parent, title = title,size = (300,200))
self.InitUI()
self.Centre()
self.Show()
def InitUI(self):
p = wx.Panel(self)
gs = wx.GridSizer(4, 4, 5, 5)
for i in range(1,17):
btn = "Btn"+str(i)
gs.Add(wx.Button(p,label = btn),0,wx.EXPAND)
p.SetSizer(gs)
app = wx.App()
Example(None, title = 'Grid demo')
app.MainLoop()
上記のコードは、次の出力を生成します-