Я пытаюсь включить настраиваемый выбор темы в свою программу. Я имел в виду это руководство: http://infohost.nmt.edu/tcc/help/pubs/tkinter/web/ttk-themes.html, но я потерялся.
Вот пример кода, который я использовал, чтобы попытаться понять это. Я создал новую тему «Тень» правильно, но со следующей частью я борюсь. Давайте не будем усложнять и скажем, что в теме «Тень» я хотел бы изменить фон рамки на черный, фон кнопки на темно-синий, а передний план кнопки на белый.
Как бы я это сделал?
from tkinter import *
from tkinter import ttk
class Main:
def __init__(self, master):
self.master = master
self.main_button = ttk.Button(self.master, text = 'New', command = self.new_window)
self.main_button.grid()
def new_window(self):
pop_up = Top(self.master)
class Top:
def __init__(self, master):
pop_up = self.pop_up = Toplevel(master)
self.pop_up_frame = ttk.Frame(pop_up, height = 100, width = 100)
self.pop_up_frame.grid(sticky = E+W+S+N)
self.s = ttk.Style()
self.s.theme_create('shadow', parent = 'default')
print(self.s.theme_names())
self.c1_button = ttk.Button(pop_up, text = 'Default', command = self.get_default)
self.c2_button = ttk.Button(pop_up, text = 'Shadow', command = self.get_shadow)
self.c1_button.grid()
self.c2_button.grid()
def get_default(self):
self.s.theme_use('default')
def get_shadow(self):
self.s.theme_use('shadow')
root = Tk()
app = Main(root)
root.mainloop()
Как всегда, спасибо!
