代码:
GUI.py:
from Emotions_Switch_Pages import *
from Emotions_Root import Main
from Emotions_0_Menu import menuFrame
menuFrame()
frame1()
Main()
Emotions_0_Menu.py:
from Emotions_Switch_Pages import frame1
from Emotions_Switch_Pages import frame2
from Emotions_1_Main import raise_frame
from Emotions_Root import root
from Tkinter import *
def menuFrame():
menu = Frame(root)
menu.grid(row = 0, column = 0)
w = Button(menu, text="Main", command=lambda: raise_frame(frame1()))
w.pack(side=TOP)
x = Button(menu, text="Add/Delete Emotions", command=lambda: raise_frame(frame2()))
x.pack(side=TOP)
y = Button(menu, text="Edit Emotions")
y.pack(side=TOP)
z = Button(menu, text="Detail View")
z.pack(side=TOP)
return menu
Emotions_1_Main.py:
from Tkinter import *
from Emotions_Root import root
f1 = Frame(root)
f1.grid(row=0, column=1)
Ti1 = Label(f1, text="\t Title\t ", font=("Arial", 44))
Ti1.pack()
Header1_1= Label(f1, text = "Add Emotion", font=("Arial", 20))
Header1_1.pack(side = LEFT)
Content1_1 = Label(f1, text = "some text")
Content1_1.pack(side = LEFT)
def MainPage():
Ti1.config(text="\t Title\t ")
Ti1.config(font=("Arial", 44))
Header1_1.config(text="Add Emotion", font = ("Arial", 20))
Content1_1.config(text = "some text")
def raise_frame(frame):
frame.tkraise()
问题:
我希望Emotions_1_Main的布局如下所示:
我理解我正在犯的错误,但我不知道如何解决它。我的目标是能够将标题置于顶部中心,在其下方有一个字体20的标题行,然后在下面的新行中有一些内容。我需要使用更多标签吗?如何更改Emotions_1_Main.py中的代码以实现此目的?
请注意,此处未包含其他不相关的代码页。
感谢您的帮助!
答案 0 :(得分:1)
多次使用side=LEFT
将小部件打包在一起。
你想要一个普通的包()。使用锚点将小部件放在屏幕的一侧。
Header1_1= Label(f1, text = "Add Emotion", font=("Arial", 20))
Header1_1.pack(anchor='w')
Content1_1 = Label(f1, text = "some text")
Content1_1.pack(anchor='w')