【发布时间】:2020-10-04 12:06:19
【问题描述】:
我正在尝试在框架顶部放置一个标签,该框架位于“笔记本”选项卡内。
但是当我运行这段代码时,标签总是在框架的中心结束。
from tkinter import *
from tkinter import ttk
class Window:
def __init__(self,master):
self.master = master
master.title("Title")
master.resizable(1,1)
master.geometry('500x400')
self.load_UI()
def load_UI(self):
self.tabOptions = ttk.Notebook(self.master )
self.tab1 = Frame(self.tabOptions, padx=130, pady=80, bg='white')
self.tabOptions.add(self.tab1, text="Add Files")
self.tabOptions_AddFile()
self.tabOptions.pack()
def tabOptions_AddFile(self):
self.label = Label(self.tab1, text="Why is this in the center of the frame?")
self.label.grid(row=0, column=0)
root = Tk()
app = Window(root)
root.mainloop()
我尝试使用:pack()、grid()、place() 来放置标签。我还尝试在将框架添加到笔记本之前放置标签,但它看起来仍然相同:(
我正在使用 python 3 顺便说一句。
【问题讨论】:
-
由于您没有让笔记本填充根窗口的可用空间,它只会调整自己的大小以适应所有子窗口,即框架
self.tab1和顶部的选项卡。尝试将self.tabOptions.pack()更改为self.tabOptions.pack(fill='both', expand=1)。
标签: python python-3.x user-interface tkinter tkinter-layout