qq_51630273 2021-04-16 22:29 采纳率: 50%
浏览 159
已采纳

wxpython中CheckBox setvalue()设置全选或者全不选

如题,用wxpython做多选题界面,想设置全选或者全不选,我看官网上说的是用色图value,但是用了没反应

  • 写回答

2条回答 默认 最新

  • 天元浪子 Python领域优质创作者 2021-04-17 11:52
    关注

    周末无聊,给题主写个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()  
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 沐川 2021-04-16 22:32
    关注
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 python 3des pyDes库
  • ¥15 关于#mysql#安装失败的问题。MySQL
  • ¥15 想问一下for循环计算表达式的方法,第一次接触
  • ¥15 如何在VA框架上面加功能,去读取框架内任何app数据功能
  • ¥15 关于#c语言#的问题:用c或c++写一个计算下列问题有关软件工程的代码并加上分析
  • ¥15 Zeppelin0.10.0版本升级lib包下的shiro-web
  • ¥15 链表入队的指针内存问题
  • ¥20 vba如何写本地html文件执行js
  • ¥15 VS2022的C#如何创建
  • ¥20 关于#用户注册#的问题,如何解决?