在 wxpython 中动态禁用复选框

维尔贝夫

所以我有一个 wxpython 应用程序,当用户将另一个复选框更改为 false 时,我想在其中禁用复选框小部件。我目前使用以下代码将这两个复选框设置为 true。

self.parentCheckbox.SetValue(True)
self.childCheckbox.SetValue(True)

现在我想禁用 childCheckbox,因为如果用户将 parentCheckbox 设为 false,它就不再相关了。我希望下面的代码可以做到这一点,但它似乎没有做任何事情。

if self.parentCheckbox.GetValue() == False:
    self.childCheckbox.Disabled()    
萨克森州的罗尔夫

它是粗糙和准备好的,但它展示了如何在没有pubsub.

import wx

class MyFrame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self, None, -1, "My Frame", size=(3000, 3000))
        self.panel = wx.Panel(self,-1)
        self.a = wx.CheckBox(self.panel, -1, "Apples", (20,100), (160,-1))
        self.b = wx.CheckBox(self.panel, -1, "Mango", (20,150), (160,-1))
        self.c = wx.CheckBox(self.panel, -1, "Banana", (20,200), (160,-1))
        self.d = wx.CheckBox(self.panel, -1, "Orange", (20,250), (160,-1))
        button=wx.Button(self.panel,label="Child",pos=(800, 400), size = (50,50))
        self.Bind(wx.EVT_BUTTON, self.newwindow, button)
        self.a.SetValue(True)

    def newwindow(self, event):
        secondWindow = window2(parent=self)
        secondWindow.Show()


class window2(wx.Frame):
    def __init__(self,parent):
        wx.Frame.__init__(self,parent, -1,'Window2', size=(1000,700))
        self.parent = parent
        self.panel=wx.Panel(self, -1)
        self.chk = wx.CheckBox(self.panel, -1, "Apples", (20,100), (160,-1))
        self.Bind(wx.EVT_CHECKBOX, self.Check)
        self.SetBackgroundColour(wx.Colour(100,100,100))
        self.Centre()
        self.Show()

def Check(self,event):
    if self.chk.IsChecked() == True:
        self.parent.a.SetValue(False)
        self.parent.a.Disable()
    else:
        self.parent.a.SetValue(True)
        self.parent.a.Enable()
    self.parent.Update()

app = wx.App()
frame = MyFrame()
frame.Show(True)
app.MainLoop()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

wxPython复选框为true或false

来自分类Dev

wxPython选中和取消选中复选框

来自分类Dev

如何使用wxPython返回选定的复选框?

来自分类Dev

wxPython - 带复选框的组合框可能吗?

来自分类Dev

使用wxPython GUI工具箱将包含文件和文件夹的复选框放在目录中

来自分类Dev

使用wxPython GUI工具箱将包含文件和文件夹的复选框放在目录中

来自分类Dev

如何禁用Angular 6中的特定动态复选框?

来自分类Dev

如何动态启用禁用的复选框?

来自分类Dev

wxpython:wxpython中的透明面板

来自分类Dev

Python 3.4.1中的wxPython

来自分类Dev

wxpython中对象的对齐

来自分类Dev

在wxPython中更新treectrl

来自分类Dev

wxpython中的线程安全

来自分类Dev

wxPython中缺少类

来自分类Dev

wxpython中对象的对齐

来自分类Dev

wxPython RichTextCtrl 中的上标

来自分类Dev

有没有一种有效的方法来处理多个复选框来更改wxPython中的一个变量?

来自分类Dev

禁用复选框

来自分类Dev

禁用alertDialog中的复选框项

来自分类Dev

禁用HTML中的复选框

来自分类Dev

禁用alertDialog中的复选框项

来自分类Dev

ReactJS:状态中的动态复选框

来自分类Dev

在PHP中动态填充复选框

来自分类Dev

在JavaScript中动态创建复选框

来自分类Dev

动态检查阵列中的复选框

来自分类Dev

在UIWebView中创建动态复选框

来自分类Dev

在JavaScript中动态创建复选框

来自分类Dev

在Java中动态添加复选框

来自分类Dev

Thymeleaf 列表中的动态复选框