Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何为tkinter应用程序完全设置背景色和文本颜色?_Python_Python 3.x_Tkinter - Fatal编程技术网

Python 如何为tkinter应用程序完全设置背景色和文本颜色?

Python 如何为tkinter应用程序完全设置背景色和文本颜色?,python,python-3.x,tkinter,Python,Python 3.x,Tkinter,我正在尝试用Python和Tkinter制作一个文本编辑器。文本编辑器功能运行良好,但我想为我的应用程序添加一个暗模式。经过一点研究,我可以切换文本输入区域的背景色和文本的颜色,但是顶部栏的背景色没有改变,顶部栏有“保存文件”、“打开”和“关于”,我不知道如何改变它。研究对我没有帮助 from tkinter import * from tkinter import scrolledtext from tkinter import filedialog from tkinter import m

我正在尝试用Python和Tkinter制作一个文本编辑器。文本编辑器功能运行良好,但我想为我的应用程序添加一个暗模式。经过一点研究,我可以切换文本输入区域的背景色和文本的颜色,但是顶部栏的背景色没有改变,顶部栏有“保存文件”、“打开”和“关于”,我不知道如何改变它。研究对我没有帮助

from tkinter import *
from tkinter import scrolledtext
from tkinter import filedialog
from tkinter import messagebox
import sys

index = 0

def dark_mode():
    global index

    if index:
        text.config(background = "white", fg = "black")
        file_menu.config(background=‘white’, fg=“black”)
    else:
        text.config(background = "black", fg = "white")
        file_menu.config(background=“black”, fg=“white”)
    index = not index

root_win = Tk()

root_win.geometry("640x480")
root_win.title("Text Editor")
main_menu = Menu(root_win)
root_win.config(menu = main_menu)




file_menu = Menu(main_menu)
main_menu.add_cascade(label="File", menu = file_menu)
file_menu.add_command(label="Dark/Light Mode", command = dark_mode)

text = scrolledtext.ScrolledText(root_win, width = 80, height = 30)
text.pack(fill = "both", expand = "yes")


root_win.mainloop()
我将提供一个屏幕截图:

它的主体文本区域将变为黑色,但文件菜单/栏区域不会变为黑色。有什么帮助吗

无法在Windows或OSX上更改菜单栏的颜色。可能吧 在linux上的一些窗口管理器上是可能的,尽管我不知道是什么原因 当然

原因是菜单栏是使用本机小部件绘制的 不由tkinter管理,因此您仅限于平台 允许