如题,用wxpython做多选题界面,想设置全选或者全不选,我看官网上说的是用色图value,但是用了没反应
2条回答 默认 最新
关注
周末无聊,给题主写个Demo吧,仅供参考。
# -*- coding: utf-8 -*- import wx class MyFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self, None, -1, 'CheckBox Demo', size = (800,600)) self.checkbox1 = wx.CheckBox(self, -1, "选项A", (60,20), (200,20), name='A') self.checkbox2 = wx.CheckBox(self, -1, "选项B", (60,40), (200,20), name='B') self.checkbox3 = wx.CheckBox(self, -1, "选项C", (60,60), (200,20), name='C') self.checkbox4 = wx.CheckBox(self, -1, "全选/全不选", (60,100), (200,20), name='ALL') self.Bind(wx.EVT_CHECKBOX, self.on_check_box) def on_check_box(self, evt): obj = evt.GetEventObject() name = obj.GetName() if name in ('A', 'B', 'C'): if obj.GetValue(): print('勾选了选项%s'%name) else: print('取消了选项%s'%name) else: v = obj.GetValue() self.checkbox1.SetValue(v) self.checkbox2.SetValue(v) self.checkbox3.SetValue(v) if __name__ == "__main__": app = wx.App() frame = MyFrame() frame.Show() app.MainLoop()
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报