2014-05-21 81 views
3

我有一个QLabel,我用样式表填充红色,但QLabel是矩形的,我想要一个圆。我尝试添加边框半径,但它不起作用,也许是因为我将我的QLabel放在了FormLayout中。我如何制作圆形QLabel?

是否有一个简单的方法来使用样式表有一个圆的QLabel?

谢谢。

编辑:使用图片似乎比现在这样做更容易。

回答

3

创建一个用作掩码的图像,并通过调用setMask将其设置在标签上。 作为documentation状态: -

成因其位图具有对应的1个比特是可见的微件的唯一的像素。如果区域包含窗口小部件的rect()以外的像素,则该区域中的窗口系统控件可能会也可能不会显示,具体取决于平台

+1

完美地工作,谢谢! –

+0

这不是一个很好的建议,因为'setMask'实际上只在顶层窗口中需要,掩码位图被传递给旧的X11服务器或Windows 95等过时的GUI系统。即使Windows XP支持alpha混合窗户(他们称之为“分层”窗口)。所有你需要做的就是组成一个遮蔽圈,作为绘制标签的最后一步。它会让你抗锯齿的边缘,并避免窗口的锯齿状外观。 –