2015-06-17 4 views
0

Я использую версию wxpython версии 2.9.4.0 и python 2.7.9.Изменение шрифта Цвет кнопки wxpython Radio

Я пытаюсь изменить цвет текста для переключателя. я инициализируется:

button = wx.RadioButton(panel, -1, 'Line', (200, 300)) 

Я был в состоянии изменить цвет вокруг кнопки радио по:

button.SetBackgroundColour((150, 150, 150)) 

Но это не поведение, я хочу. Я хочу изменить цвет текста, а не область вокруг него. Я ожидал, что изменение цвета переднего плана изменит цвет текста переключателя, так как цвет меняется для статического текста (как показано здесь Change the colour of a StaticText, wxPython). Код, который я использовал для этого, это:

button.SetForegroundColour((0, 255, 0)) 

Однако по неизвестным мне причинам это ничего не изменило о переключателе. Я ошибаюсь, что эта команда должна изменить цвет текста переключателя, и если да, то какова правильная команда?

Заранее благодарен!

ответ

1

Методы SetForegroundColoour и SetBackgroundColour не гарантируют работу. Причина в том, что wxPython использует собственные виджеты для ОС, на котором он запущен. Если родной виджет не поддерживает изменение цвета текста, то эти методы не будут иметь эффекта. Некоторые виджеты позволяют изменять цвет на Mac, а те же виджеты в Windows - нет.

Если вам действительно нужно изменить цвет текста в переключателе, вам, вероятно, потребуется создать собственный виджет. Смотрите следующее:

Смежные вопросы