根据 youtube 和某些网站上的教程,我了解到网格布局的工作方式类似于基于行和列的 xlsheet。但我坚持简单的设计。
但是我的设计就变成这样了。我对Python完全是菜鸟。 请帮我。为什么我的设计会出错?
我的代码是:
# ----- Row 0 -----
lbl_head = tk.Label(win,text ='Titile',font = ('courier'))
lbl_head.grid (row=0, column=5, padx = 120, pady = 10,columnspan=2)
lbl_Amount = tk.Label(win,text ='Amount$:',font = ('courier'))
lbl_Amount.grid (row=2, column=0)
label_TotalAmount = tk.Label(win,text ='11111',font = ('courier'))
label_TotalAmount.grid(row = 2, column = 1)
lbl_Balance = tk.Label(win,text ='Balance$:',font = ('courier'))
lbl_Balance.grid (row=2, column=2)
label_totalBalance = tk.Label(win,text ='11111',font = ('courier'))
label_totalBalance.grid(row = 2, column = 3)
最佳答案
你非常亲密的珍妮。很高兴你也把它画出来了。
首先,如果您使用网格,但我建议您不要使用 padx
和 pady
。这可能就是你的“标题”被关闭的原因。其次,最好将您的设计想象成电子表格。
您放入网格函数中的行和列与设计上的此网格相对应。
这是我针对您的设计的解决方案,但是请根据您的需求进行调整。
lbl_head = tk.Label(win,text ='Title',font = ('courier'))
lbl_head.grid (row=0, column=1)
lbl_Amount = tk.Label(win,text ='Amount$:',font = ('courier'))
lbl_Amount.grid (row=1, column=0)
label_TotalAmount = tk.Label(win,text ='11111',font = ('courier'))
label_TotalAmount.grid(row = 1, column=1)
lbl_Balance = tk.Label(win,text ='Balance$:',font = ('courier'))
lbl_Balance.grid (row=1, column=2)
label_totalBalance = tk.Label(win,text ='11111',font = ('courier'))
label_totalBalance.grid(row = 1, column = 3)
button1 = tk.Button(win, text="Button1", fg="red")
button1.grid(row = 1, column = 4)
label_Input = tk.Label(win,text ='Input',font = ('courier'))
label_Input.grid(row =2, column=0)
entry_Entry = tk.Entry(win, font = ('courier'))
entry_Entry.grid(row=2, column=1)
button2 = tk.Button(win, text="Button2", fg="red")
button2.grid(row = 2, column = 2)
button3 = tk.Button(win, text="Button3", fg="red")
button3.grid(row = 2, column = 3)
您可以阅读的一个很好的指南是 here .
关于python - 无法在窗口、Python gridview 中对齐小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52325753/