python – tkinter中的标签宽度
发布时间:2021-01-24 03:44:44 所属栏目:Python 来源:互联网
导读:我正在用tkinter编写一个应用程序,我试图在框架中放置几个标签……不幸的是, windowTitle=Label(... width=100) 和 windowFrame=Frame(... width=100) 宽度差异很大…… 到目前为止,我使用此代码: windowFrame=Frame(root,borderwidth=3,relief=SOLID,width=
我正在用tkinter编写一个应用程序,我试图在框架中放置几个标签……不幸的是, windowTitle=Label(... width=100) 和 windowFrame=Frame(... width=100) 宽度差异很大…… 到目前为止,我使用此代码: windowFrame=Frame(root,borderwidth=3,relief=SOLID,width=xres/2,height=yres/2) windowFrame.place(x=xres/2-160,y=yres/2-80) windowTitle=Label(windowFrame,background="#ffa0a0",text=title) windowTitle.place(x=0,y=0) windowContent=Label(windowFrame,text=content,justify="left") windowContent.place(x=8,y=32) ... #xres is screen width #yres is screen height 由于某种原因,设置标签宽度没有正确设置宽度,或者不使用像素作为测量单位…那么,有没有办法以适应框架长度的方式放置windowTitle小部件,或者以像素为单位设置标签宽度? 解决方法高度和宽度在包含文本时以文本单位定义标签的大小.按照@Elchonon Edelson的建议,设置第一帧小技巧的大小: from tkinter import * root = Tk() def make_label(master,x,y,h,w,*args,**kwargs): f = Frame(master,height=h,width=w) f.pack_propagate(0) # don't shrink f.place(x=x,y=y) label = Label(f,**kwargs) label.pack(fill=BOTH,expand=1) return label make_label(root,10,40,text='xxx',background='red') make_label(root,30,background='blue') root.mainloop() (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |