QT透明窗體大雜燴

2021-09-01 00:26:01 字數 965 閱讀 4843

1.

視窗整體透明,但是窗體上的控制項不透明。

通過設定窗體的背景色來實現,將背景色設定為全透。

qpalette pal = palette();

pal.setcolor(qpalette::background, qcolor(0x00,0xff,0x00,0x00));

setpalette(pal);

試驗效果:

窗體標題欄不透明;

窗體客戶區上的控制項不透明,

qlabel

控制項只是字顯示,控制項背景色透明;

窗體客戶區完全透明。

另外從網上看到的方法:

setattribute(qt::wa_translucentbackground,

true

) ;

試驗的結果是類似於上面的方法,但有時候窗體會被一些雜色斑點填充,未找到原因。

2. 視窗及其上面的控制項都半透明:

setwindowopacity(0.7)

試驗效果:視窗及控制項都半透明。

3. 視窗整體不透明,區域性透明:

在 paint

事件中使用

clear

模式繪圖。

void

testwindow::paintevent( qpaintevent* )

試驗效果:繪製區域全透明。如果繪製區域有控制項不會影響控制項。

以上實驗均是基於

directfb

的 qte

測試。在

linux

下及 windows

下效果會略有不同。

比如在

windows

下第 3 個實驗,繪製區域就是乙個黑窟窿,如果

window

本身半透,則是

window

下面的內容加上半透效果,不是全透明效果。

分頁大雜燴

文章中提到了linq,所以先介紹一下它,好讓我們有個初步認識 linq是語言級整合查詢 language integrated query linq是一種用來進行資料訪問的程式設計模型,使得.net語言可以直接支援資料查詢 linq發布於.net framework 3.5 linq體現了物件導向程...

C指標大雜燴

include int func int a,int b int main void int p int 可以看成int a int 這是乙個指標指向引數是int,返回值是int的函式。函式指標。int p int 這是乙個函式,他的引數是乙個整形,返回值是乙個指向整形的指標。include int...

問題大雜燴(一)

最近遇到了很多問題,記錄一下,以便後續檢視 a.檢查網路,檢視不同的節點之間的網路是否可達 2.檔案等資料處理 a.從上百份的檔案中提取特定的資料,使用awk方法進行統計出來,通過寫shell指令碼處理資料。b.awk用法 shell小指令碼 讀取提取到的資料到txt中,讀取txt中每一行資料,然後...