python中label前景色的动态改变_在ttk / python中更改Label小部件的填充颜色

我试图在python中使用ttk / tkinter显示图像.图像有一个白色边框,我想在更大的白色背景上显示这个图像 – 所以它周围有很多白色空间.

为此,我在标签中使用“padx”和“pady”,每个100px.不幸的是,填充区域是灰色的.

现在我尝试更改标签的前景色和背景色无济于事.填充区域保持灰色.然后我将标签放在Frame小部件中,并尝试更改Frame的前景/背景颜色.但不幸的是,Frame小部件不会侦听width =和height = arguments.此外,如果我改变前景色,SUNKEN边框会改变颜色 – 非常酷,但对我来说完全没用:/.

有人可以帮帮我吗?当前的非工作代码如下所示:

style = Style()

style.configure('Dlr.TFrame', background="blue", relief=SUNKEN)

frm = Frame(self, style="Dlr.TFrame") # does not work: ,height=500,width=500)

frm.grid(row=0, column=0, rowspan=8, columnspan=2, sticky=N+S+E+W)

style.configure("Dlr.TLabel", background="white")

style.configure("Dlr.TLabel.padding", background="white") # just guessed ...

self.IMG = Label(frm, style="Dlr.TLabel")

self.IMG.grid(row=0, column=0, padx=100, pady=100)

解决方法:

将图像放入框架然后设置框架颜色的技术是正确的技术.

宽度和高度不起作用,因为网格和包都会导致包含窗口小部件默认为“缩小到适合”.这称为几何传播.您可以使用包含小部件上的方法grid_propagate或pack_propagate打开或关闭此功能.

例如,如果调用frm.grid_propagate(False)然后设置frm的小部件和高度,则将遵循宽度和高度.

标签:python,tkinter,ttk,styling

来源: https://codeday.me/bug/20190630/1335527.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值