Python tkinter编程中label2标签无法调整位置问题求助
问题修复说明
- 核心问题:同一个Tkinter组件不能混用多种布局管理器,你的
label2先后调用了.place()和.pack()方法,后执行的.pack()会覆盖之前设置的坐标参数,导致自定义位置不生效。 - 解决方案:直接删除
label2.pack()这一行代码即可,保留.place()配置就能按照你设定的x、y值自由调整标签位置。
调整后完整可运行代码
from tkinter import * ws = Tk() ws.title('Authentication') ws.geometry('430x240') ws.config(bg='white') img = PhotoImage(file="Error Message.png") label = Label( ws, image=img ) label.place(x=0, y=0) label2 = Label(ws, text= 'Please enter your password:',font=('W95FA', 20)) label2.place(x=117, y=120) text = Text( ws, height=1, width=32, font =('W95FA', 10) ) text.place(x=116, y=125) button = Button( ws, text=' Submit ', bg='blue', fg='white', relief=RAISED, font=('W95FA', 18) ) button.place(x=155, y=161) ws.mainloop()
额外优化建议
如果要做密码输入效果,不要用Text组件,改用Entry组件并设置show="*"参数,就能自动隐藏输入内容变成密文样式,更符合密码输入场景的需求:
# 替换原有Text组件的代码 text = Entry( ws, width=32, font =('W95FA', 10), show="*" ) text.place(x=116, y=125)
内容的提问来源于stack exchange,提问作者apollo
相关产品推荐
相关产品推荐

