如果应用程序自己绘制的界面没有标题栏,那我们怎么来拖动界面呢?

当鼠标在窗口内移动,点击或者释放时都会产生WM_NCHITTEST消息,响应函数OnNcHitTest会返回一个枚举值,mfc会根据这个枚举值进行相应的处理。 当返回值为HTCAPTION时,MFC会认为此时鼠标位于标题栏上,因而当鼠标按下并移动时就会执行拖动操作。我们需要做的就是响应这个消息,然后根据自己的需要,返回HTCAPTION参数即可!如下图所示:

这个代码实现的功能就是只要鼠标的点击点位于客户端内,就返回一个HTCAPTION参数,然后系统就会以为你在拖到标题栏,从而实现界面的拖动。 当然我们可以根据得到的point与客户端的坐标的关系来达到各种拖动效果,比如:

MFC开发IM-MFC任意位置实现窗口拖动相关推荐

  1. VC/MFC拖动窗口任意位置移动窗口

    除了拖动标题栏移动窗口以外,我们也可以拖动窗口任意位置(除控件)位置而使对话框移动. 这里只讲述基于对话框的程序 class c**dlg:public CDialog { //Constructio ...

  2. 实验四 使用C++的mfc实现圆心为任意位置的圆的绘制。

    实验4 实现圆的生成算法之圆心为任意位置的圆的绘制. 一.实验目的 1. 熟悉CDC图形程序库: 2. 掌握中点画圆生成算法: 3. 掌握Bresenham画圆算法. 二.实验内容 利用VisualC ...

  3. 【Visual Studio 2019】创建 MFC 桌面程序 ( 安装 MFC 开发组件 | 创建 MFC 应用 | MFC 应用窗口编辑 | 为按钮添加点击事件 | 修改按钮文字 | 打开应用 )

    文章目录 一.安装 MFC 开发组件 二.创建 MFC 应用 三.MFC 应用窗口编辑 四.为按钮添加点击事件 五.修改按钮文字 六.打开系统其它应用 七.博客源码 一.安装 MFC 开发组件 打开 ...

  4. MFC模拟AutoCAD 在单文本视图窗口任意位置输入文字

    本文介绍如果通过MFC编程实现模拟AutoCAD 在单文本视图窗口任意位置输入文字. 先在VS2017中建一个名为FormatDemo单文档工程,在FormatDemoView.h中声明如下变量: p ...

  5. VC,MFC开发技巧收集

    (mainmenu->GetSubMenu (0))->DeleteMenu(i,MF_BYPOSITION); break; } } 十五.改变应用程序的图标 缺 十六.另一种改变窗口标 ...

  6. MFC程序提示 0xC0000005: 读取位置 0x00000020 时发生访问冲突。

    这个bug困扰我两天了,我在win7下开发的MFC程序,在win7下一只运行良好,放到同事的win10机子上就出问题了,在点击按钮弹出子窗口时必崩,在win7下仔细调试才发现:调用DoModal()后 ...

  7. 【MFC】可调整按钮位置的工具栏

    00. 目录 文章目录 00. 目录 01. 案例概述 02. 开发环境 03. 关键技术 04. 程序设计 05. 秘笈心法 06. 源码下载 07. 附录 01. 案例概述 本实例实现了工具栏上两 ...

  8. 使用MFC开发ActiveX控件

    摘要: 本文对COM组件中的ActiveX控件的MFC开发方法进行了介绍,讲述了用户自定义和库存属性.方法以及事件的添加方法和属性页的制作过程.使读者能够掌握基本的MFC ActiveX开发方法. 前 ...

  9. 随想录(MFC开发有感)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 虽然之前也写过一些mfc的文章,但是时间长了也会忘了.对于很多同学来说,用C#开发图形界面又快又 ...

最新文章

  1. list、tuple、set、dict 四大数据结构
  2. MyEclipse 常用操作
  3. j2ee下的单元测试小工具
  4. 网站标题怎么写可以被搜索引擎快速识别?
  5. Expression Blend 5 Preview For Silverlight5 RC已发布
  6. fpm制作mysql rpm包_FPM简介(定制rpm包)
  7. python stdout stderr 一起输出_python – 使用subprocess.Popen()时,stderr和stdout没有输出
  8. 清华大学黄民烈老师:本科生如何做出好的科研
  9. (五)通过Python的select监控多个描述符实现并发连接
  10. Java程序模拟QQ空间登录 - 并模拟刷说说的赞(图文) 注意:腾讯修改了加密算法,已失效(2015-01-31)
  11. javascript异步延时加载及判断是否已加载js/css文件
  12. 【Windows10】利用分区助手扩展C盘分区
  13. android 监听飞行模式,如何在Android上检测飞行模式?
  14. 在浏览器设置中,如何禁用或启用Cookie?
  15. ant批量修改文件名_怎么批量修改文件名后缀(安卓批量修改文件后缀操作方法)...
  16. 项目实训(十六)FPS游戏之PUN角色位移同步,动画状态同步
  17. java找不到主类错误的原因_java错误:找不到或无法加载主类的原因与解决方法...
  18. Scratch之小猫酷跑我设计
  19. (转载)最值得看的一维傅里叶分析(时域如何转频域)
  20. 【Coggle 30 Days of ML】糖尿病遗传风险检测挑战赛(2)

热门文章

  1. MySQL MHA 搭建测试
  2. SPOJ LCS 后缀自动机
  3. 文字不间断滚动(转)
  4. JAVA环境变量JAVA_HOME、CLASSPATH、PATH设置详解
  5. Cesium入门-2-增加地形
  6. MyBatis查询,返回值Map或ListMap
  7. PyTorch 1.0 中文文档:torch.utils.bottleneck
  8. 数据科学 IPython 笔记本 9.9 花式索引
  9. TensorFlow 学习指南 四、分布式
  10. Gainlo 面试指南 翻译完成