wx.Menuについてはこちらをご覧ください。
# -*- coding: utf-8 -*-
import wx
def click(event):
""" ボタンクリックイベント """
# ファイルメニューの全アイテムを取得
count = menu_file.GetMenuItems()
for i in count:
# ラジオアイテムである
if i.GetKind() == wx.ITEM_RADIO:
# チェックが付いている
if i.IsChecked():
print(u'インデックス値%sのラジオアイテムにチェックが付いています' % i.GetId())
# チェックアイテムである
elif i.GetKind() == wx.ITEM_CHECK:
# チェックが付いている
if i.IsChecked():
print(u'インデックス値%sのチェックアイテムにチェックが付いています' % i.GetId())
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
frame.CreateStatusBar()
panel = wx.Panel(frame, wx.ID_ANY)
# メニューバー
menu_bar = wx.MenuBar()
# 「ファイル」メニュー
menu_file = wx.Menu()
item_1 = wx.MenuItem(menu_file, 1, u'保存')
item_2 = wx.MenuItem(menu_file, 2, u'終了')
item_3 = wx.MenuItem(menu_file, 3, u'ラジオ1', kind=wx.ITEM_RADIO)
item_4 = wx.MenuItem(menu_file, 4, u'ラジオ2', kind=wx.ITEM_RADIO)
item_5 = wx.MenuItem(menu_file, 5, u'ラジオ3', kind=wx.ITEM_RADIO)
item_6 = wx.MenuItem(menu_file, 6, u'チェック1', kind=wx.ITEM_CHECK)
item_7 = wx.MenuItem(menu_file, 7, u'チェック2', kind=wx.ITEM_CHECK)
menu_file.AppendItem(item_1)
menu_file.AppendItem(item_2)
menu_file.AppendItem(item_3)
menu_file.AppendItem(item_4)
menu_file.AppendItem(item_5)
menu_file.AppendItem(item_6)
menu_file.AppendItem(item_7)
menu_bar.Append(menu_file, u'ファイル')
frame.SetMenuBar(menu_bar)
# ボタン
button = wx.Button(panel, wx.ID_ANY, u'ボタン', pos=(100, 50))
button.Bind(wx.EVT_BUTTON, click)
frame.Show()
application.MainLoop()
<結果>上記スクリプト内で、過去に解説した内容については省略致します。
ご確認いただきたい場合は、pythonでGUIツールを作る ~基礎編~をご覧ください。
続いて解説を行います。