在實現(xiàn)彈幕應(yīng)用程序的時候传透,需要讓窗體的背景透明耘沼,但是其上的彈幕(基于QLable實現(xiàn))則不是透明的。具體的方法如下朱盐。
在窗體類中群嗤,設(shè)置
//全屏
QRect deskRect = QApplication::desktop()->availableGeometry();
setFixedSize(deskRect.width(),deskRect.height());
setAttribute(Qt::WA_TranslucentBackground, true);//背景透明
setWindowFlags(Qt::Window | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);//去除菜單欄,并且始終處于頂部
經(jīng)過測試:
在win10系統(tǒng)下兵琳,得到的窗體是透明的狂秘,并且透明部分可以正常響應(yīng)鼠標(biāo)事件骇径。
在Mac系統(tǒng)下,得到的窗體也是透明的者春,但是透明部分無法正常響應(yīng)鼠標(biāo)事件破衔。