如何在此框架顶部放置标签? Tkinter
How can I place a label of top of this frame? Tkinter
我正在尝试将标签放置在 'Notebook' 选项卡内的框架顶部。
但是当我 运行 这段代码时,标签总是在框架的中心结束。
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 顺便说一句。
这是因为你的Frame
在self.tab1 = Frame(self.tabOptions, padx=130, pady=80, bg='white')
行中被填充了。你的 Frame
在这里:
只需删除 padx=130, pady=80
即可。但要保持 tabOptions
的大小,请替换
self.tabOptions.pack()
来自
self.tabOptions.pack(fill=BOTH, expand=True)
我正在尝试将标签放置在 'Notebook' 选项卡内的框架顶部。
但是当我 运行 这段代码时,标签总是在框架的中心结束。
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 顺便说一句。
这是因为你的Frame
在self.tab1 = Frame(self.tabOptions, padx=130, pady=80, bg='white')
行中被填充了。你的 Frame
在这里:
只需删除 padx=130, pady=80
即可。但要保持 tabOptions
的大小,请替换
self.tabOptions.pack()
来自
self.tabOptions.pack(fill=BOTH, expand=True)