当前位置:C++技术网 > 资讯 > 创建不规则窗口-心形窗口

创建不规则窗口-心形窗口

更新时间:2015-06-25 19:09:00浏览次数:1+次

本文涉及到的技术:
1. 无边框窗口
2. 拖动无边框窗口
3. 设置背景图片
4. 透明窗口技术,指定透明色透明

首先来看效果图:

心形窗口
程序启动就只有上图所示的心形窗口,拖动心形可以拖动窗口。

实现方法:
1. 设置窗口为无边框窗口。
在主窗口属性对话框中,将“Boder”改为“None”,即可设置为无边框窗口。

2.拖动无边框窗口。
本技术实现原理和方法请阅读《在客户区拖动窗口(拖动无边框窗口)两种实现方法及原理分析

3.设置背景图片。
本技术实现原理和方法请阅读《如何绘制窗口背景图片》和《窗口背景颜色和背景图片的设置

4.设置背景透明色。
本技术实现原理和方法请阅读《实现窗口透明(透明窗口和不规则窗口)的原理分析
这里补充设置窗口透明色的具体代码,其实文章已经说清楚了。

SetWindowLong(m_hWnd,GWL_EXSTYLE,
    GetWindowLong(m_hWnd,GWL_EXSTYLE)| WS_EX_LAYERED);
SetLayeredWindowAttributes(RGB(255,255,255),0,LWA_COLORKEY);

说明:
1.其实这里的实现,并没有什么重新写什么,都是网站已有的文章涉及到的技术。
2.这里是软件开发的逻辑思路,大家要学习这些技术后组合使用,要去实践才行。