Python 从动态创建的wx.checkbox获取值
这段代码(感谢Mike Driscoll)创建了一个包含168个复选框的网格,每天每小时一个复选框。当涉及到检索他们的价值观时,我被卡住了。。。 我想得到一份像{周一:是的}之类的口述。 感谢您的帮助Python 从动态创建的wx.checkbox获取值,python,wxpython,wxwidgets,Python,Wxpython,Wxwidgets,这段代码(感谢Mike Driscoll)创建了一个包含168个复选框的网格,每天每小时一个复选框。当涉及到检索他们的价值观时,我被卡住了。。。 我想得到一份像{周一:是的}之类的口述。 感谢您的帮助 import wx class MainPanel(wx.Panel): def __init__(self, parent): wx.Panel.__init__(self, parent) main_sizer = wx.BoxSizer(wx.V
import wx
class MainPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
main_sizer = wx.BoxSizer(wx.VERTICAL)
for row in range(7):
row_sizer = wx.BoxSizer(wx.HORIZONTAL)
for col in range(24):
name_of_checkbox = "row_{row}_col_{col}".format(row=row, col=col)
checkbox = wx.CheckBox(self, name=name_of_checkbox)
row_sizer.Add(checkbox, 0, wx.ALL, 5)
main_sizer.Add(row_sizer)
self.SetSizer(main_sizer)
class MainFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, title='Hours and days', size=(650, 400))
panel = MainPanel(self)
self.Show()
if __name__ == '__main__':
app = wx.App()
frame = MainFrame()
app.MainLoop()
您需要在创建复选框时绑定事件。然后使用getValue()函数获取复选框状态
import wx
class MainPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
main_sizer = wx.BoxSizer(wx.VERTICAL)
for row in range(7):
row_sizer = wx.BoxSizer(wx.HORIZONTAL)
for col in range(24):
name_of_checkbox = "row_{row}_col_{col}".format(row=row, col=col)
checkbox = wx.CheckBox(self, name=name_of_checkbox)
#self.Bind(wx.EVT_CHECKBOX, self.onChecked)
row_sizer.Add(checkbox, 0, wx.ALL, 5)
main_sizer.Add(row_sizer)
self.SetSizer(main_sizer)
#def onChecked(self, e):
#cb = e.GetEventObject()
#print (cb.GetName(), ' is clicked', cb.GetValue())
class MainFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, title='Hours and days', size=(900, 400))
panel = MainPanel(self)
self.Bind(wx.EVT_CHECKBOX, self.OnButtonClicked)
self.Show()
self.user_dict = dict()
self.initDict()
def OnButtonClicked(self, e):
cb = e.GetEventObject()
print (cb.GetName(), ' is clicked', cb.GetValue())
self.user_dict[cb.GetName()] = cb.GetValue()
print(self.user_dict)
def initDict(self):
for row in range(7):
for col in range(24):
name_of_checkbox = "row_{row}_col_{col}".format(row=row, col=col)
self.user_dict[name_of_checkbox] = False
if __name__ == '__main__':
app = wx.App()
frame = MainFrame()
app.MainLoop()
输出可能如下所示:
(u'row_4_col_7', ' is clicked', True)
{'row_0_col_0': False, 'row_0_col_1': False, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_0', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': False, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_1', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': True, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_2', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': True, 'row_0_col_2': True, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
import wx
class MainPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
main_sizer = wx.BoxSizer(wx.VERTICAL)
days=['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday']
self.boxes=[]
for row in range(7):
row_sizer = wx.BoxSizer(wx.HORIZONTAL)
day = days[row]
for col in range(24):
name_of_checkbox = "{day}_{hour}".format(day=day, hour=col)
self.checkbox = wx.CheckBox(self, name=name_of_checkbox)
row_sizer.Add(self.checkbox, 0, wx.ALL, 5)
self.boxes.append(self.checkbox)
main_sizer.Add(row_sizer)
button = wx.Button(self,-1,"Retrieve Data")
main_sizer.Add(button)
self.Bind(wx.EVT_CHECKBOX, self.OnChecked)
self.Bind(wx.EVT_BUTTON, self.OnGetData)
self.SetSizer(main_sizer)
def OnChecked(self,event):
clicked = event.GetEventObject()
print clicked.GetName()
print event.IsChecked()
def OnGetData(self,event):
day_dict = {}
day_list = []
for i in self.boxes:
if i.IsChecked():
n = i.GetName()
day_dict[n]="Checked"
day_list.append((n,"Checked"))
print day_dict
print day_list
class MainFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, title='Hours and days', size=(850, 400))
panel = MainPanel(self)
self.Show()
if __name__ == '__main__':
app = wx.App()
frame = MainFrame()
app.MainLoop()
您需要在创建复选框时绑定事件。然后使用getValue()函数获取复选框状态
import wx
class MainPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
main_sizer = wx.BoxSizer(wx.VERTICAL)
for row in range(7):
row_sizer = wx.BoxSizer(wx.HORIZONTAL)
for col in range(24):
name_of_checkbox = "row_{row}_col_{col}".format(row=row, col=col)
checkbox = wx.CheckBox(self, name=name_of_checkbox)
#self.Bind(wx.EVT_CHECKBOX, self.onChecked)
row_sizer.Add(checkbox, 0, wx.ALL, 5)
main_sizer.Add(row_sizer)
self.SetSizer(main_sizer)
#def onChecked(self, e):
#cb = e.GetEventObject()
#print (cb.GetName(), ' is clicked', cb.GetValue())
class MainFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, title='Hours and days', size=(900, 400))
panel = MainPanel(self)
self.Bind(wx.EVT_CHECKBOX, self.OnButtonClicked)
self.Show()
self.user_dict = dict()
self.initDict()
def OnButtonClicked(self, e):
cb = e.GetEventObject()
print (cb.GetName(), ' is clicked', cb.GetValue())
self.user_dict[cb.GetName()] = cb.GetValue()
print(self.user_dict)
def initDict(self):
for row in range(7):
for col in range(24):
name_of_checkbox = "row_{row}_col_{col}".format(row=row, col=col)
self.user_dict[name_of_checkbox] = False
if __name__ == '__main__':
app = wx.App()
frame = MainFrame()
app.MainLoop()
输出可能如下所示:
(u'row_4_col_7', ' is clicked', True)
{'row_0_col_0': False, 'row_0_col_1': False, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_0', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': False, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_1', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': True, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_2', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': True, 'row_0_col_2': True, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
import wx
class MainPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
main_sizer = wx.BoxSizer(wx.VERTICAL)
days=['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday']
self.boxes=[]
for row in range(7):
row_sizer = wx.BoxSizer(wx.HORIZONTAL)
day = days[row]
for col in range(24):
name_of_checkbox = "{day}_{hour}".format(day=day, hour=col)
self.checkbox = wx.CheckBox(self, name=name_of_checkbox)
row_sizer.Add(self.checkbox, 0, wx.ALL, 5)
self.boxes.append(self.checkbox)
main_sizer.Add(row_sizer)
button = wx.Button(self,-1,"Retrieve Data")
main_sizer.Add(button)
self.Bind(wx.EVT_CHECKBOX, self.OnChecked)
self.Bind(wx.EVT_BUTTON, self.OnGetData)
self.SetSizer(main_sizer)
def OnChecked(self,event):
clicked = event.GetEventObject()
print clicked.GetName()
print event.IsChecked()
def OnGetData(self,event):
day_dict = {}
day_list = []
for i in self.boxes:
if i.IsChecked():
n = i.GetName()
day_dict[n]="Checked"
day_list.append((n,"Checked"))
print day_dict
print day_list
class MainFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, title='Hours and days', size=(850, 400))
panel = MainPanel(self)
self.Show()
if __name__ == '__main__':
app = wx.App()
frame = MainFrame()
app.MainLoop()
您可以创建一个保存复选框id的结构,并添加一个按钮以一次检索所有数据。这使得访问哪些框已被选中,哪些未被选中变得容易。通过这种方式,您可以检索您喜欢的任何结构中的数据,例如:
(u'row_4_col_7', ' is clicked', True)
{'row_0_col_0': False, 'row_0_col_1': False, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_0', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': False, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_1', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': True, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_2', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': True, 'row_0_col_2': True, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
import wx
class MainPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
main_sizer = wx.BoxSizer(wx.VERTICAL)
days=['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday']
self.boxes=[]
for row in range(7):
row_sizer = wx.BoxSizer(wx.HORIZONTAL)
day = days[row]
for col in range(24):
name_of_checkbox = "{day}_{hour}".format(day=day, hour=col)
self.checkbox = wx.CheckBox(self, name=name_of_checkbox)
row_sizer.Add(self.checkbox, 0, wx.ALL, 5)
self.boxes.append(self.checkbox)
main_sizer.Add(row_sizer)
button = wx.Button(self,-1,"Retrieve Data")
main_sizer.Add(button)
self.Bind(wx.EVT_CHECKBOX, self.OnChecked)
self.Bind(wx.EVT_BUTTON, self.OnGetData)
self.SetSizer(main_sizer)
def OnChecked(self,event):
clicked = event.GetEventObject()
print clicked.GetName()
print event.IsChecked()
def OnGetData(self,event):
day_dict = {}
day_list = []
for i in self.boxes:
if i.IsChecked():
n = i.GetName()
day_dict[n]="Checked"
day_list.append((n,"Checked"))
print day_dict
print day_list
class MainFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, title='Hours and days', size=(850, 400))
panel = MainPanel(self)
self.Show()
if __name__ == '__main__':
app = wx.App()
frame = MainFrame()
app.MainLoop()
您可以创建一个保存复选框id的结构,并添加一个按钮以一次检索所有数据。这使得访问哪些框已被选中,哪些未被选中变得容易。通过这种方式,您可以检索您喜欢的任何结构中的数据,例如:
(u'row_4_col_7', ' is clicked', True)
{'row_0_col_0': False, 'row_0_col_1': False, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_0', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': False, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_1', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': True, 'row_0_col_2': False, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
(u'row_0_col_2', ' is clicked', True)
{'row_0_col_0': True, 'row_0_col_1': True, 'row_0_col_2': True, 'row_0_col_3': False, 'row_0_col_4': False, 'row_0_col_5': False, 'row_0_col_6': False, 'row_0_col_7': False, 'row_0_col_8': False, 'row_0_col_9': False, 'row_4_col_13': False, 'row_1_col_15': False, 'row_1_col_14': False, 'row_1_col_17': False, 'row_1_col_16': False, 'row_1_col_11': False, 'row_1_col_10': False, 'row_1_col_13': False, 'row_1_col_12': False, 'row_1_col_19': False, 'row_1_col_18': False, 'row_6_col_10': False, 'row_6_col_11': False, 'row_6_col_12': False, 'row_1_col_0': False, 'row_6_col_13': False, 'row_1_col_3': False, 'row_1_col_9': False, 'row_1_col_8': False, 'row_2_col_21': False, 'row_2_col_20': False, 'row_2_col_23': False, 'row_2_col_22': False, 'row_1_col_5': False, 'row_1_col_4': False, 'row_1_col_7': False, 'row_1_col_6': False, 'row_6_col_21': False, 'row_6_col_20': False, 'row_6_col_4': False, 'row_3_col_19': False, 'row_3_col_18': False, 'row_6_col_23': False, 'row_3_col_13': False, 'row_3_col_12': False, 'row_3_col_11': False, 'row_3_col_10': False, 'row_3_col_17': False, 'row_3_col_16': False, 'row_3_col_15': False, 'row_3_col_14': False, 'row_6_col_5': False, 'row_6_col_14': False, 'row_6_col_15': False, 'row_6_col_16': False, 'row_6_col_17': False, 'row_0_col_23': False, 'row_0_col_22': False, 'row_0_col_21': False, 'row_0_col_20': False, 'row_6_col_18': False, 'row_6_col_19': False, 'row_5_col_20': False, 'row_5_col_21': False, 'row_5_col_22': False, 'row_5_col_23': False, 'row_4_col_23': False, 'row_4_col_22': False, 'row_4_col_21': False, 'row_4_col_20': False, 'row_6_col_2': False, 'row_1_col_1': False, 'row_6_col_0': False, 'row_6_col_1': False, 'row_3_col_22': False, 'row_3_col_23': False, 'row_2_col_8': False, 'row_2_col_9': False, 'row_2_col_6': False, 'row_2_col_7': False, 'row_2_col_4': False, 'row_2_col_5': False, 'row_2_col_2': False, 'row_2_col_3': False, 'row_2_col_0': False, 'row_2_col_1': False, 'row_1_col_2': False, 'row_6_col_3': False, 'row_0_col_12': False, 'row_0_col_13': False, 'row_0_col_10': False, 'row_0_col_11': False, 'row_0_col_16': False, 'row_0_col_17': False, 'row_0_col_14': False, 'row_0_col_15': False, 'row_6_col_6': False, 'row_0_col_18': False, 'row_0_col_19': False, 'row_6_col_7': False, 'row_4_col_16': False, 'row_4_col_17': False, 'row_4_col_14': False, 'row_4_col_15': False, 'row_4_col_12': False, 'row_3_col_20': False, 'row_4_col_10': False, 'row_4_col_11': False, 'row_3_col_21': False, 'row_4_col_18': False, 'row_4_col_19': False, 'row_6_col_8': False, 'row_6_col_9': False, 'row_4_col_4': False, 'row_4_col_5': False, 'row_4_col_6': False, 'row_4_col_7': True, 'row_4_col_0': False, 'row_4_col_1': False, 'row_4_col_2': False, 'row_4_col_3': False, 'row_4_col_8': False, 'row_4_col_9': False, 'row_2_col_10': False, 'row_2_col_11': False, 'row_2_col_12': False, 'row_2_col_13': False, 'row_2_col_14': False, 'row_2_col_15': False, 'row_2_col_16': False, 'row_2_col_17': False, 'row_2_col_18': False, 'row_2_col_19': False, 'row_6_col_22': False, 'row_5_col_9': False, 'row_5_col_8': False, 'row_5_col_5': False, 'row_5_col_4': False, 'row_5_col_7': False, 'row_5_col_6': False, 'row_5_col_1': False, 'row_5_col_0': False, 'row_5_col_3': False, 'row_5_col_2': False, 'row_1_col_20': False, 'row_1_col_21': False, 'row_1_col_22': False, 'row_1_col_23': False, 'row_3_col_7': False, 'row_3_col_6': False, 'row_3_col_5': False, 'row_3_col_4': False, 'row_3_col_3': False, 'row_3_col_2': False, 'row_3_col_1': False, 'row_3_col_0': False, 'row_3_col_9': False, 'row_3_col_8': False, 'row_5_col_19': False, 'row_5_col_18': False, 'row_5_col_11': False, 'row_5_col_10': False, 'row_5_col_13': False, 'row_5_col_12': False, 'row_5_col_15': False, 'row_5_col_14': False, 'row_5_col_17': False, 'row_5_col_16': False}
import wx
class MainPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
main_sizer = wx.BoxSizer(wx.VERTICAL)
days=['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday']
self.boxes=[]
for row in range(7):
row_sizer = wx.BoxSizer(wx.HORIZONTAL)
day = days[row]
for col in range(24):
name_of_checkbox = "{day}_{hour}".format(day=day, hour=col)
self.checkbox = wx.CheckBox(self, name=name_of_checkbox)
row_sizer.Add(self.checkbox, 0, wx.ALL, 5)
self.boxes.append(self.checkbox)
main_sizer.Add(row_sizer)
button = wx.Button(self,-1,"Retrieve Data")
main_sizer.Add(button)
self.Bind(wx.EVT_CHECKBOX, self.OnChecked)
self.Bind(wx.EVT_BUTTON, self.OnGetData)
self.SetSizer(main_sizer)
def OnChecked(self,event):
clicked = event.GetEventObject()
print clicked.GetName()
print event.IsChecked()
def OnGetData(self,event):
day_dict = {}
day_list = []
for i in self.boxes:
if i.IsChecked():
n = i.GetName()
day_dict[n]="Checked"
day_list.append((n,"Checked"))
print day_dict
print day_list
class MainFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, title='Hours and days', size=(850, 400))
panel = MainPanel(self)
self.Show()
if __name__ == '__main__':
app = wx.App()
frame = MainFrame()
app.MainLoop()
这两个都很好,谢谢。还有一个问题,如果我想从所有复选框开始,怎么做?显然,我可以用另一个循环来做,我想知道它是否可以在创建框的时候完成…现在我很担心在左边标记一周中的几天,在顶部标记小时(0-23)。嵌套循环让我做噩梦@浮动选中所有复选框可以在初始循环中完成。定义
self.checkbox
后,添加行self.checkbox.SetValue(True)
太简单了!太容易了,以至于我忽略了它,我本想做一些更复杂的、好的老python。还有好老罗尔夫!谢谢。这两个都很好用,谢谢。还有一个问题,如果我想从所有复选框开始,怎么做?显然,我可以用另一个循环来做,我想知道它是否可以在创建框的时候完成…现在我很担心在左边标记一周中的几天,在顶部标记小时(0-23)。嵌套循环让我做噩梦@浮动选中所有复选框可以在初始循环中完成。定义self.checkbox
后,添加行self.checkbox.SetValue(True)
太简单了!太容易了,以至于我忽略了它,我本想做一些更复杂的、好的老python。还有好老罗尔夫!谢谢