QT重寫QLabel畫框並透明化背景

2021-10-01 11:05:51 字數 744 閱讀 6977

實現在顯示攝像頭預覽畫面的qlabel上畫框的功能

qt提供了畫筆的功能類qpainter,qpainter在paintevent函式中使用,所以重新寫乙個類,繼承qlabel,再通過重寫qlabel的void paintevent(qpaintevent *event)方法,實現畫框的功能。並且為了不讓新的qlabel元件遮擋底下的控制項,設定新的qlabel透明化背景。

typedef struct rect;

class rect : public qlabel

;

rect::rect(qwidget *parent):qlabel(parent)

void rect::setrect(rect *r)

void rect::paintevent(qpaintevent *event)

}

rect * show_rect = new rect(this);

show_rect->resize(640,720);

show_rect->move(0,0);

show_rect->setstylesheet("background:transparent");
show_rect->update();

Qt動畫框架

雖然現在大多數專案的動畫都是用qml在做了,反正了解了解也沒什麼壞處,或許以後也用得到。缺少一張圖。公司網速太慢,傳不上去。其實也就是qt動畫框架類,了解即可 qabstractanimation 所有動畫類的基類 qanimationgroup 動畫容器類的抽象基類 記憶一下,挺重要 qparal...

Qt設定QTextEdit和QLabel的字型顏色

比如設定qlabel palette.setcolor qpalette windowtext,qt blue 比如設定qtextedit palette.setcolor qpalette text,qt blue 設定qtextedit為qpalette windowtext是無效的。此處一定要...

Qt 之 QLabel 設定面罩

qlabel 是qt 中的標籤類,一般情況我們只是設定文字描述,但是qlabel不僅僅只是顯示一些文字介紹那麼簡單。qlabel支援html中標籤的使用,同時可以設定普通和動態圖。這裡簡單介紹一下如何為qlable設定面罩。很簡單,通過設定不同形狀的面罩可以達到不同的效果。1 設定動態 qpixma...