博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
猎豹MFC、--拖动无边框窗体
阅读量:4494 次
发布时间:2019-06-08

本文共 414 字,大约阅读时间需要 1 分钟。

以上窗口为无边框窗体:
在窗口属性中  去除窗口边框:
首先定义两个变量:
在构造函数中进行初始化:
因为要按下鼠标左键才能进行拖动,所以增加鼠标左键消息:
小技巧:
 捕获鼠标  放置鼠标跑出当前窗口:
增加移动鼠标消息:
鼠标按下去的小时函数如下:
增加鼠标离开弹起的消息:
鼠标移动的消息函数实现如下:
鼠标当前位置减去鼠标开始的位置为鼠标移动的距离,为减少窗口的闪烁,让距离大于两个像素的才让他移动,因为不停的移动就会有明显的闪烁感。
GetWIndowsRect()获取窗口原来的位置。
OffSetRect()获取矩形偏移以后的新位置
之前‘捕获了鼠标 现在要释放,这是一对 要一起使用
处理第二个问题 当鼠标失去焦点: 要松手 鼠标弹起,禁止移动。要增加窗口激活消息:
移动过程中鼠标变为失去焦点不激活状态

转载于:https://www.cnblogs.com/hungryvampire/p/5299102.html

你可能感兴趣的文章
PCL Examples
查看>>
spring boot
查看>>
浏览器URL传参最大长度问题
查看>>
学习进度条
查看>>
Linux crontab 定时任务详解
查看>>
string成员函数
查看>>
onSaveInstanceState()方法问题
查看>>
[转]CocoaChina上一位工程师整理的开发经验(非常nice)
查看>>
大数据时代侦查机制有哪些改变
查看>>
雷林鹏分享:jQuery EasyUI 菜单与按钮 - 创建链接按钮
查看>>
Apache Traffic Server服务搭建
查看>>
poj1990两个树状数组
查看>>
学习python-day1
查看>>
Zend_Db_Table->insert ()和zend_db_adapter::insert方法返回值不同
查看>>
递归问题
查看>>
Hyperledger下子项目
查看>>
Linq-查询上一条下一条
查看>>
常见前端开发的题目,可能对你有用
查看>>
BeautifulSoap库入门
查看>>
乐观锁与悲观锁
查看>>