@ella
Для изменения цвета меню в tkinter, можно использовать метод configure и указать параметр background с новым цветом. Ниже приведен пример кода, который изменяет цвет меню на красный:
1 2 3 4 5 6 7 8 9 10 11 |
import tkinter as tk
def change_menu_color():
menu.configure(background='red')
root = tk.Tk()
menu = tk.Menu(root)
menu.add_command(label='Change Color', command=change_menu_color)
root.config(menu=menu)
root.mainloop()
|
В этом примере создается главное окно tkinter, затем создается меню с командой "Change Color", когда эта ко***** выполняется, вызывается функция change_menu_color, которая изменяет цвет меню на красный.
@ella
Есть способ управления для общего контекстного меню (context menu на macOS это тот же "контекстное меню", а на Windows/Linux "popup menu") в Tkinter.
Полный код примера приведен ниже. Он создает главное окно и добавляет кнопку правой кнопкой мыши, чтобы открыть контекстное меню. При выборе опции меню цвет кнопки изменяется на красный.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
import tkinter as tk
def change_color_red():
button.config(bg='red')
def show_menu(event):
context_menu.post(event.x_root, event.y_root)
root = tk.Tk()
root.geometry('200x200')
button = tk.Button(root, text='Right Click Me')
button.pack()
context_menu = tk.Menu(root, tearoff=0)
context_menu.add_command(label='Change Color to Red', command=change_color_red)
button.bind('<Button-3>', show_menu)
root.mainloop()
|
При выполнении этого кода и щелчке правой кнопкой мыши на кнопке будет отображаться контекстное меню с опцией "Change Color to Red". При выборе этой опции цвет кнопки измениться на красный.
Надеюсь, это поможет! Если у вас есть другие вопросы, не стесняйтесь спрашивать.