MFC窗口透明

 2012-05-06 11:54

 

 

1、 給窗口設置擴展樣式WS_EX_LAYERED;

如果是對話框窗口可以在WM_CREATE()函數中設置

SetWindowLong(this->m_hWnd,

GWL_EXSTYLE,

GetWindowLong(this->m_hWnd,GWL_EXSTYLE) | WS_EX_LAYERED);

2、 在初始化函數中OnInitDialog()中調用

::SetLayeredWindowAttributes(this->m_hWnd,//窗口句柄

0,//要透明的顏色,可以用RGB(r,g,b)來指定,不設置可爲0

100,//透明度,0是完全透明,255是完全不透明

3);//透明風格,1是標題透明,2是窗體透明,3是窗體和標題都透明

3.、最後注意

注意:在低版本的SDK中沒有定義WS_EX_LAYERED,這時需要自己去定義,#define WS_EX_LAYERED 0x00080000

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章