2014-05-21 82 views
3

我有一個QLabel,我用樣式表填充紅色,但QLabel是矩形的,我想要一個圓。我嘗試添加邊框半徑,但它不起作用,也許是因爲我將我的QLabel放在了FormLayout中。我如何製作圓形QLabel?

是否有一個簡單的方法來使用樣式表有一個圓的QLabel?

謝謝。

編輯:使用圖片似乎比現在這樣做更容易。

回答

3

創建一個用作掩碼的圖像,並通過調用setMask將其設置在標籤上。 作爲documentation狀態: -

成因其位圖具有對應的1個比特是可見的微件的唯一的像素。如果區域包含窗口小部件的rect()以外的像素,則該區域中的窗口系統控件可能會也可能不會顯示,具體取決於平臺

+1

完美地工作,謝謝! –

+0

這不是一個很好的建議,因爲'setMask'實際上只在頂層窗口中需要,掩碼位圖被傳遞給舊的X11服務器或Windows 95等過時的GUI系統。即使Windows XP支持alpha混合窗戶(他們稱之爲「分層」窗口)。所有你需要做的就是組成一個遮蔽圈,作爲繪製標籤的最後一步。它會讓你抗鋸齒的邊緣,並避免窗口的鋸齒狀外觀。 –