ウィンドウを二分割する
ウィンドウを複数の領域に分割したい。まずは簡単な二つの場合を検討した。デモの中でちょうど二つに分割しているものを見つける。それは、SplitterWindow.pyである。
分割している境界線をマウスで移動させると、ログにメッセージを出力するようになっているが、そのあたりの機能は取り除いてシンプルなものにする。
さらに、縦ではなくて水平に分割するように改造した(改造と言っても、メソッドをSplitVerticallyからSplitHorizontallyに変えただけ(^^;)。
単純なので、簡単に動作した(写真の通り)。
以下は改造したソース(SplitterWindow2.py)
import wx class MySplitter(wx.SplitterWindow): def __init__(self, parent, ID): wx.SplitterWindow.__init__(self, parent, ID, style = wx.SP_LIVE_UPDATE ) def runTest(frame, nb, log): splitter = MySplitter(nb, -1) sty = wx.BORDER_SUNKEN # determine boundary lines p1 = wx.Window(splitter, style=sty) p1.SetBackgroundColour("red") p2 = wx.Window(splitter, style=sty) p2.SetBackgroundColour("sky blue") # splitter.SetMinimumPaneSize(20) # splitter.SplitVertically(p1, p2, 0) splitter.SplitHorizontally(p1, p2, 0) return splitter if __name__ == '__main__': import sys,os import run run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:])
wxPythonのクラスが持っているメソッドをまとめた本をそろそろ欲しくなってきた。満足なリファレンスがない今のままではいずれ行き詰ってしまいそうだ。
wxPythonに付属のリファレンスを見ても、分かったような分からないような...。
↓これ、いいかな?でも高いんだよな。
- 作者: Noel Rappin,Robin Dunn
- 出版社/メーカー: Manning Pubns Co
- 発売日: 2006/03/28
- メディア: ペーパーバック
- 購入: 1人 クリック: 38回
- この商品を含むブログ (13件) を見る