想做一個柵條特效的窗口,在網上找到一篇VC窗口特效的文章,原文:http://blog.csdn.net/qiaozhangchi/archive/2008/12/11/3497367.aspx,發現並沒有柵條特效,在網上找了很久也沒找到,無奈只好自己想辦法了。靈光一現下,想到以前做的異形窗口,便想用SetWindowRgn函數加定時器來實現。主要用到三個函數:
BOOL CreateRectRgn(int x1, int y1, int x2, int y2);
int CombineRgn(CRgn* pRgn1, CRgn* pRgn2, int nCombineMode);
int SetWindowRgn(HWND hWnd, HRGN hRgn, BOOL bRedraw);
以上函數詳細使用請參見MSDN,程序實現如下:
在OnInitDialog()函數中:
在定時器函數OnTimer()中:
通過以上方法,稍做修改,還可實現窗口的其它特效,如使用CreateEllipticRgn函數創建圓形RGN等等。如果哪位高人知道有更好的實現方法,請賜教^_^
以上方法,如有雷同,純屬巧合……