2024-04-25 15:06:40 发布
网友
我正在使用tkinter创建一个时间表。我在代码中将根bg颜色设置为白色,但它没有变白。(我还将一些标签设置为白色,以查看它是否变为白色。)
但是,当我在一个新文件中测试它时,它可以工作。在
这是我的日程代码。在
root=Tk() root['bg']='white' cp=coursePlan(root) cp.pack() root.title('Schedule') root.mainloop()
这是我的测试代码。在
当您将一个parent分配给小部件,比如当小部件显示时,Label(root, ...)时,默认情况下,小部件在其父部件上占用了一些空间。在
parent
Label(root, ...)
因此,如果cd3}的父控件没有设置为cd3},那么它的cd3}基本上没有设置为自己的cd3}颜色:
pack(fill=...
grid(sticky=...)
'red'
'white'
参见下面的演示:
import tkinter as tk def demo(*args): if choice.get() == 1: widget.pack(fill='both', expand=True) elif choice.get() == 2: widget.pack(fill='x', expand=False) elif choice.get() == 3: widget.pack_forget() def default(event): root.state('zoomed') choice.set(2) widget.pack(fill='x', expand=False) root = tk.Tk() root['bg'] = 'white' root.state('zoomed') widget = tk.LabelFrame(root, text="Displaying Options", bg='red') choice = tk.IntVar(value=2) fill = tk.Radiobutton(widget, variable=choice, text="Fill / Overfit", value=1) no_resize = tk.Radiobutton(widget, variable=choice, text="Some / No regard to resizability", value=2) no_display = tk.Radiobutton(widget, variable=choice, text="Not displayed", value=3) choice.trace_add('write', demo) # to call demo when choice is modified root.bind_all("<Escape>", default) # to go back to initial state when user hits esc widget.pack(fill='x', expand=False) fill.pack(side='left') no_resize.pack(side='left') no_display.pack(side='left') root.mainloop()
当您将一个
parent
分配给小部件,比如当小部件显示时,Label(root, ...)
时,默认情况下,小部件在其父部件上占用了一些空间。在因此,如果cd3}的父控件没有设置为cd3},那么它的cd3}基本上没有设置为自己的cd3}颜色:
pack(fill=...
或grid(sticky=...)
),或者小部件在x和y维上都超过了其父对象,这导致父对象完全位于小部件后面,因此只显示小部件的bg'red'
。在'red'
和{'white'
。在参见下面的演示:
相关问题 更多 >
编程相关推荐