MFC實現窗體透明

2021-07-11 13:21:13 字數 589 閱讀 5200

mfc建立透明窗體

1、設定窗體屬性為

layeredwindow,

並設定窗體為無邊框窗體。

//設定窗體為layeredwindow

long para = getwindowlong(this->getsafehwnd(), gwl_exstyle);

para |= ws_ex_layered;

setwindowlong(this->getsafehwnd(), gwl_exstyle, para);

2、設定窗體透明色

//設定窗體透明色為rgb(255,0,0)

setlayeredwindowattributes(rgb(255, 0, 0), 255, lwa_colorkey);

3、在onpaint

事件中繪製窗體背景,背景色為透明色

cpaintdc dc(this);

rect rect;

getclientrect(&rect);

dc.fillsolidrect(&rect, rgb(255, 0, 0));

備註:如果不設定為無邊框窗體,將只實現顯示透明,不能實現透明操作。

Qt 透明窗體實現

一.背景刷成黑色,前景色設為白色。方法一 paltette方式,經測試,該方法不會影響到其他控制項,推薦使用 qpalette bgpal palette bgpal.setcolor qpalette background,qcolor 0,0 0,255 bgpal.setcolor qpale...

C 實現透明窗體

這篇文章不是windows mobile的,而是win32的。這篇文章主要介紹一下c 下如何呼叫windows api函式,這裡也想說一下,windows mobile程式設計不能把眼光只侷限於手機,手機與pc端相結合的程式也是很有挑戰力 很有市場的。所以,這也是我寫這篇文章的原因之一。做delph...

QT實現不規則窗體和透明窗體

不規則窗體的實現有兩種方式 一種是設定窗體的掩碼影象 另一種是設定窗體背景透明,然後重寫其繪圖函式,將背景圖繪製上去。第一種方式 首先要準備兩張影象,一張是要顯示的影象,另一張是第一張圖的掩碼影象,黑色部分是你的窗體要顯示的部分,如圖 具體實現的關鍵 如下 irregularform1 irregu...