以前、wx.RadioButtonについてご紹介させていただきました。
今回ご紹介するwx.RadioBoxは基本的には同じですが、記述方法など少々異なります。
# -*- coding: UTF-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"タイトル", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
item = (u"項目1", u"項目2", u"項目3")
radio_box = wx.RadioBox(panel, wx.ID_ANY, u"グループ名", choices=item)
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(radio_box, flag=wx.ALL, border=10)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
<結果>
上記スクリプト内で、過去に解説した内容については省略致します。
ご確認いただきたい場合は、pythonでGUIツールを作る ~基礎編~をご覧ください。
続いて詳細を見ていきます。
~~詳細~~~~~~~~~~~~~~~~~~~~~~~~
item = (u"項目1", u"項目2", u"項目3")
radio_box = wx.RadioBox(panel, wx.ID_ANY, u"グループ名", choices=item)
ラジオボックスを作成するにはwx.RadioBoxクラスを使用します。基本的な引数は(親ウィジット、識別子、枠の文字列、選択肢のリスト)となります。
また、ラジオボックスでは折り返し位置を指定することもできます。
選択項目が多い場合などに便利です。
例えば、項目が6個あり、3個めで折り返したい場合は次のように記述します。
radio_box = wx.RadioBox(panel, wx.ID_ANY, u"グループ名", choices=item, majorDimension=3)
さらに、並び方向を指定することもできます。
# 横並びを指定
radio_box = wx.RadioBox(panel, wx.ID_ANY, u"グループ名", choices=item, wx.RA_HORIZONTAL)
# 縦並びを指定
radio_box = wx.RadioBox(panel, wx.ID_ANY, u"グループ名", choices=item, style=wx.RA_VERTICAL)
なお、並びはデフォルトで横が指定されています。縦並びを指定 |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ここからは、wx.RadioBoxクラスでよく使用する主な関数をご紹介します。
# 選択項目のインデックスを取得する
GetSelection()
# 指定したインデックスの項目を選択状態にする
SetSelection(0)
# 選択している項目のラベルを取得する
GetStringSelection()
# 指定したインデックスの項目のラベルを取得する
GetItemLabel(0)
# 指定したインデックスの項目のラベルを設定する
SetItemLabel(0)
# 項目の数を取得する
GetCount()
# 行数を取得する
GetRowCount()
# 列数を取得する
GetColumnCount()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ラジオボックスは、ラジオボタンよりも簡単に設置できるます。
基本的な関数は揃っていますので、使い方に困ることはないと思います。
0 件のコメント:
コメントを投稿