wxPythonを使ってみる (7)
こんにちは.これからwxPythonを使ってみる(7)について始めたいと思います.
対象や動作環境などのはじめに必要な情報はwxPythonを使ってみる(1) と同じになります.
また,今回の内容は前の6回の続きとなります.是非読んで見てください.
特徴
前回は,GridSizerの主な概要について学びました.
今回は,GridSizerのitem引数とproportion引数について学んで行きたいと思います.
item引数
- wx.Button などwx.Window を継承しているオブジェクト
- wx.BoxSizer などwx.Sizer を継承しているオブジェクト
- wx.Sizer オブジェクト
上の3つのオブジェクトの1と2はBoxSizerとそれほど差がないですが,3が少し変わります.GridSizerはコンテナー領域をすべて使用して分割を行うため,マスを1つ飛ばすために利用する,というイメージに近いです.
window_display13.pyはitem引数に関する例のプログラムとなります.
import wx
class CustomFrame(wx.Frame):
def __init__(self,title):
wx.Frame.__init__(self,None,-1,title,size=(400,400))
panel = wx.Panel(self)
layout = wx.GridSizer(2,2,0,0)
layout.Add(wx.Button(panel,wx.ID_ANY,'B01'),flag=wx.EXPAND)
layout.Add(wx.Button(panel,wx.ID_ANY,'B02'),flag=wx.EXPAND)
layout.Add(wx.Size(0,0))
layout.Add(wx.Button(panel,wx.ID_ANY,'B03'),flag=wx.EXPAND)
panel.SetSizer(layout)
self.Show()
app = wx.App(False)
CustomFrame('GridSizer')
app.MainLoop()
window_display13.pyの実行結果は下の図となります.
このように画面上はマスを1つ(左下のマス)飛ばして配置するような形となります.
proportion引数
proportionは配置されたアイテムのコンテナー領域内煮しめる割合を制御しますが,BoxSizerおよびBoxSizerから派生したSizerでのみ利用可能な引数です.GridSizerではこの引数を利用しても画面上に変化はありません.
window_display14.pyはproportion引数に関する例のプログラムとなります.
import wx
class CustomFrame(wx.Frame):
def __init__(self,title):
wx.Frame.__init__(self,None,-1,title,size=(400,400))
panel = wx.Panel(self)
layout = wx.GridSizer(2,2,0,0)
layout.Add(wx.Button(panel,wx.ID_ANY,'B01'))
layout.Add(wx.Button(panel,wx.ID_ANY,'B02'),proportion=1)
layout.Add(wx.Button(panel,wx.ID_ANY,'B03'),flag=wx.EXPAND)
layout.Add(wx.Button(panel,wx.ID_ANY,'B04'),proportion=1,flag=wx.EXPAND)
panel.SetSizer(layout)
self.Show()
app = wx.App(False)
CustomFrame('GridSizer')
app.MainLoop()
window_display14.pyの実行結果は下の図となります.
このようにproportionを設定してもアイテムに変化がありません.
今回のwxPythonを使ってみる(7)は以上で終わります.
読んでいただいてありがとうございます.
「wxpythonを使ってみる」目次
Author And Source
この問題について(wxPythonを使ってみる (7)), 我々は、より多くの情報をここで見つけました https://qiita.com/Kenta-Han/items/c11c1c70021e05c49138著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .