python tkinter label靠左对齐_如何在Tkinter网格中左对齐标签和输入框

解决Tkinter中LabeledFrame的Entry和Label左对齐问题,通过设置grid_columnconfigure调整列宽并使用sticky属性确保元素靠左。在for循环中为每个LabeledEntry的Column配置minsize,实现各组件的一致对齐。
摘要由CSDN通过智能技术生成

我认为您的问题在于,每次创建LabeledFrame的新实例时,都将Entry&Label放在同一个Frame中。

此Frame的grid设置与任何其他Frame设置是分开的,因此LabeledFrame无法对齐列,因为它们的列宽值不同。

通常,为了完成之后的工作,只需将sticky = W放在grid选项中,让Entry小部件左对齐单元格的内容。但是,这只适用于每个单独的Frame,使得每个单独的LabeledFrame的内容不一致。

无需更改太多代码即可修复此问题的最简单方法:

您需要在for循环中添加一行。如果指定插入self.field的Frame的列的最大最小宽度,则可以确保事情将按照您希望的方式对齐。我还为LabeledEntry类中的grid调用添加了配置选项:sticky = W用于Label&sticky = E用于Entry。

试试这个,看看能不能解决你的问题。如果希望列占用更少的空间,只需减少minsize。from Tkinter import *

class LabeledEntry(Frame):

def __init__(self, parent, *args, **kargs):

text = kargs.pop("text")

Frame.__init__(self, parent)

Label(self, text=text, justify=LEFT).grid(sticky = W, column=0,row=0)

Entry(self, *args, **kargs).grid(sticky = E, column&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值