【问题标题】:wxPython issue in changing button text更改按钮文本时的 wxPython 问题
【发布时间】:2016-08-31 14:23:37
【问题描述】:

我正在开发一个 wxPython 应用程序,其中有一个带有标签文本“分配”的按钮。此外,我的应用程序上还有 2 个单选选项,即“未分配”和“已分配”。默认情况下,当应用程序启动时,会选择单选选项“未分配”,并且按钮的标签文本为“分配”。我制作了事件驱动代码,在选择单选选项“已分配”时将按钮的标签文本从“分配”更改为“重新分配”。到目前为止,一切都很好,代码按预期工作。

现在的问题是在单选选项“已分配”的情况下,按钮标签确实会获得一个新的标签文本作为“重新分配”,但它会覆盖以前的标签文本而不是更改。然后,只要我将鼠标光标放在按钮上,文本就会刷新并且看起来干净清晰。以下是我的代码

def rdoAllocated_Click(self, event):
    self.btn_Allocate.SetLabelText('Re-Allocate')

def rdoUnAllocated_Click(self, event):
    self.btn_Allocate.SetLabelText('Allocate')

有没有办法在更改后自动刷新按钮标签文本以清楚地显示新文本而不是不可读的覆盖文本。 Here is the image how it looks when getting updated

【问题讨论】:

    标签: button label wxpython


    【解决方案1】:

    尝试调用self.btn_Allocate.Refresh() 这有时会发生,具体取决于平台和小部件类型。 Refresh 只是告诉系统在不久的将来发送绘画事件,并且很可能会为您解决问题。如果不是,那么您可能需要调用父窗口的Refresh

    【讨论】:

    • 完美。非常感谢罗宾 :)
    猜你喜欢
    • 1970-01-01
    • 2021-10-06
    • 1970-01-01
    • 2020-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多