duilib设置透明窗口_界面开发心得与Duilib | 学步园
一、設(shè)置窗體透明度和指定透明色(如指定了黑色,即所有黑色的部分將會(huì)變得透明)
DWORD dwExStyle=GetWindowLong(m_hWnd,GWL_EXSTYLE);
if((dwExStyle&WS_EX_LAYERED)!=WS_EX_LAYERED)
SetWindowLong(m_hWnd,GWL_EXSTYLE,dwExStyle|WS_EX_LAYERED);
HMODULE hInst = LoadLibrary(_T("User32.DLL"));
typedef BOOL (WINAPI *MYFUNC)(HWND, COLORREF, BYTE, DWORD);
MYFUNC SetLayeredWindowAttributes = NULL;
SetLayeredWindowAttributes = (MYFUNC)::GetProcAddress(hInst, "SetLayeredWindowAttributes");
if(SetLayeredWindowAttributes)
{
if(!SetLayeredWindowAttributes(m_hWnd, RGB(0,0,0), 150, LWA_COLORKEY|LWA_ALPHA))
{
assert(false && _T("SetLayeredWindowAttributes 失敗了!"));
}
}
上面的代碼:1、首先讓W(xué)INDOWSTYLE加上GWL_EXSTYLE樣式,因?yàn)镾etLayeredWindowAttributes只能對(duì)這種樣式操作,而只有PUPUP類型的窗體才能更成這種樣式,所以也就是說(shuō),只有彈出窗體才能用這個(gè)函數(shù)設(shè)置透明度和透明色,主窗體是不行的
DUILIB 篇
一、皮膚路徑更改問(wèn)題
一旦確定了皮膚路徑,中途是不能更改皮膚路徑的,這樣會(huì)導(dǎo)致在其它位置的圖片找不到!!!!
二、如何實(shí)現(xiàn)拖動(dòng)窗體
在XML中,給Window,加上caption屬性,最后一個(gè)值就指定可拖動(dòng)的標(biāo)題欄的大小,標(biāo)題欄的頂端默認(rèn)是窗體頂部
代碼:
三、圖片的corner屬性,九宮格拉伸
首先,要拉伸,必然圖片要比窗體要小,才能看到拉伸效果,對(duì)于DUILIB的拉伸,說(shuō)是參考了安桌的九宮格,但我試了試,應(yīng)該沒(méi)那么高級(jí),也沒(méi)搞清楚到底是怎么回事,反正這回,我試驗(yàn)著各種數(shù)據(jù),實(shí)現(xiàn)了我想要的效果。貼幾個(gè)博客吧,對(duì)我有很大的啟發(fā)作用。
總結(jié)
以上是生活随笔為你收集整理的duilib设置透明窗口_界面开发心得与Duilib | 学步园的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 精钢砂地面施工需要送混凝土和砂的材料监测
- 下一篇: java 导入world数据_java读