colors - 如何从 wxPython 更改禁用的 TextCtrl 的 ForegroundColour

标签 colors wxpython textctrl ubuntu

如何从 wxPython 更改禁用的 TextCtrl 的前景色?
我的意思是,当我使用 SetForegroundColour 更改颜色时,它只会针对启用状态进行更改。例如,当我禁用 TextCtrl 时,即使我将其设置为红色,它仍保持深灰色。
提前致谢!

import wx

class MainFrame(wx.Frame):

    def __init__(self, *args, **kwargs):
        super(MainFrame, self).__init__(*args, **kwargs)
        self.InitUI()
        self.Fit()
        self.Show(True)              

    def InitUI(self):
        text = wx.TextCtrl(self)
        text.SetForegroundColour((255,0,0))
        text.SetValue('Example')
        text.Enable(False)

def main():
    app = wx.App()
    MainFrame(None)
    app.MainLoop()

if __name__ == '__main__':
    main()

最佳答案

简短的回答是你不能。
背景色和前景色被您禁用它们的事实所覆盖。您的操作系统环境决定了禁用项目的外观。

当然,这并不意味着您无法解决这个问题。
如果不是禁用/启用该项目,而是设置一个 True/False 标志,然后您可以在触发事件时检查该标志,并根据该标志是 True 还是 False,您是否处理该事件。
这允许您处理事件并显示您喜欢的任何颜色。

关于colors - 如何从 wxPython 更改禁用的 TextCtrl 的 ForegroundColour,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31899928/

相关文章:

c# - 在 winforms 应用程序上绘制相反(反向)颜色

python - 如何在 wxPython 中以编程方式取消最大化最大化框架?

python - 有没有用 wxPython 开发过流行的桌面应用程序?

python - 更改 wxPython TextCtrl 小部件上的字体

reactjs - 如何为缓冲区几何中的每个顶点分配不同的颜色?三.js

javascript - HSL 颜色到底应该怎么写?

python - wxPython - wx.TextCtrl - 强制样式

python - 从 TextCtrl 框中获取字符串

终端中的 python - 如何获取当前颜色?

python - Python 的高效图像缩略图控件?