python - wxPython:有没有办法改变wx.ScrolledWindow中滚动条的颜色?

标签 python wxpython

我发现如果我直接制作一个wx.ScrollBar,我可以通过SetBackgroundColour()函数修改它的背景颜色。但是,我不确定当 Scrollbar 是 wx.ScrolledWindow 的一部分时如何引用它。

如何获取 ScrolledWindow 中滚动条的引用?

第二个问题是,有没有办法改变滚动条上的背景颜色?我正在尝试实现“夜间”模式,因此想要稍微静音所有颜色。在程序的其余部分中执行此操作相当简单,但滚动条仍然是一个问题。

最佳答案

您可以通过查询scrolledwindow.GetChildren()来获取对每个ScrollBar(一个水平的和一个垂直的)的引用,如下所示:

sw = wx.ScrolledWindow(self)
for child in sw.GetChildren():
  if isinstance(child, wx.ScrollBar):
    print child
    child.SetBackgroundColour(...)

关于你的第二个问题,有SetForegroundColour()。您始终可以通过执行以下操作来查看文档:

python
>>> import wx
>>> help(wx.ScrollBar)

关于python - wxPython:有没有办法改变wx.ScrolledWindow中滚动条的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14151659/

相关文章:

python - 使用不带菜单项的快捷键表

python - 如何使用 Cython 将 python 函数作为参数传递给 c++ 函数

python - 为什么不分配给循环变量修改原始列表?如何循环分配回列表?

python - 如何使 simplejson 可序列化类

python - 如何删除初始 wx.RadioBox 选择?

python - WxPython 框架未捕获 EVT_SET_FOCUS

python - 我的 ex.OnPaint() 函数不会在 wx 主循环中不断调用

python - 如何在 wxPython 中使用 matplotlib 事件处理?

python - __future__ 模块在 exec 中不生效

python - 如何在 Python 中编写像 Jasmine 这样的嵌套测试用例