wxPython:有没有办法改变wx.ScrolledWindow中滚动条的颜色?
问题描述:
我发现如果我直接制作wx.ScrollBar
,我可以通过SetBackgroundColour()
函数修改它的背景颜色。但是,我不确定如何参考滚动条,它是wx.ScrolledWindow
的一部分。wxPython:有没有办法改变wx.ScrolledWindow中滚动条的颜色?
如何在ScrolledWindow中获得对滚动条的引用?
第二个问题是,有没有办法改变滚动条上的背景颜色?我试图实施“夜间”模式,因此想要将所有颜色静音一点。在程序的其余部分做这件事相当直接,但滚动条仍然是一个问题。
答
你可以通过查询scrolledwindow.GetChildren(参考到每个滚动条(一横一纵)),如:
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)