gpt4 book ai didi

python - 设置 Tkinter/ttk 框架背景颜色

转载 作者:行者123 更新时间:2023-11-28 22:49:35 26 4
gpt4 key购买 nike

我正在尝试更改 ttk 框架的背景颜色,并且查找了其他示例,但似乎都没有用。到目前为止,这是我的代码:

from Tkinter import *
import ttk

p = Tk()

p.geometry('600x350')
p.configure(bg='#334353')

gui_style = ttk.Style()
gui_style.configure('My.TButton', foreground='#334353')
gui_style.configure('My.TFrame', background='#334353')

frame = ttk.Frame(p, style='My.TFrame')
frame.grid(column=1, row=1)

ttk.Button(frame, text='test', style='My.TButton').grid(column=0, row=0)
ttk.Button(frame, text='Test 2', style='My.TButton').grid(column=3, row=3)

p.mainloop()

窗口有我想要的背景颜色,但框架仍然有默认的灰色背景。有什么我需要添加不同的吗?我希望除按钮外的整个窗口颜色为#334353。我该怎么做?

编辑:我附上了我的窗口的样子。我不想要灰色。 :/(注意。显然我没有足够的代表来发布图像,所以这里是我当前窗口的 imgur 链接:http://imgur.com/KyhbdMB

最佳答案

您的框架仅调整为容纳两个子窗口(按钮)所需的最小尺寸。您似乎希望框架填满主窗口。当您将框架网格化时,您应该添加粘性选项以使其展开以填充可用空间(例如:frame.grid(column=1,row=1,sticky='news'))。然后你需要让父级将所有空间空间分配给这个网格单元格。为此,您要对父窗口使用 grid_rowconfigure 和 grid_columnconfigure 方法。在这种情况下:

p.grid_columnconfigure(1, weight=1)
p.grid_rowconfigure(1, weight=1)

它告诉主框架网格几何管理器应该为单元格和第 1 行第 1 列提供备用空间。这将导致您的框架扩展以填充窗口。

关于python - 设置 Tkinter/ttk 框架背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23679006/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com