2017-02-16 8 views
1

Я пытаюсь узнать, как создать пользовательский стиль TTK следуя documentition: http://infohost.nmt.edu/tcc/help/pubs/tkinter/web/ttk-style-layer.htmlТкк: пользовательский стиль не работает

Вот код:

self.style = ttk.Style() 
    self.style.configure("ciao.TLabel", bg="red") 
    poplabel = ttk.Label(self.root, text="ciao", style="ciao.TLabel") 
    poplabel.place(x=0, y=530) 

Проблема заключается в том, что стиль ярлыка остается по умолчанию, а не «ciao.TLabel».

+0

Какая ОС вы используете? [Это] (http://stackoverflow.com/questions/6723850) может помочь ответить на ваш вопрос. –

ответ

1

Проблема в том, что «bg» не существует на ttk. Только «фон» действительно,

self.style.configure("ciao.TLabel", background="red") 

работает.

+0

Поздравляем вас с ответом на ваш вопрос. ;) –

0

У вас возникла проблема, потому что фон ttk.Label не настроен на изменение стиля, но, изменив опцию фона в w = ttk.Label(parent, option=value, ...).

Чтобы изменить цвет фона из существующего цвета, что вам нужно сделать:
poplabel.configure(background='red') или poplabel[background]='red'.

Чтобы изменить фон по умолчанию при создании ttk.label, тип:
poplabel = ttk.Label(self.root, text="ciao", background="red")

Update: Мое плохое, вы можете изменить цвет фона, как упоминалось выше, а также с помощью стиля. L'ultimo является правильным. :)