VC++编写一个窗口,根据获取鼠标所在div位置的不同,单击左键时响应不同的绘图

VC&鼠标左键按下时响应消息
最近在做按钮 发现 按钮本身之后 单击双击事件
没有按下弹起事件,搜了一下说 可以重载 cbutton
或者使用 消息&
我选择使用消息
只要在代码中插入如下函数 即可":
view plaincopy to clipboardprint?
BOOL AutoFocus::PreTranslateMessage(MSG*
&&& // TODO: Add
your specialized code here and/or call the base
&&& AutoFocus
*mainDialog = (AutoFocus
*)GetParent();&&
&&& static flag
(pMsg-&message == WM_LBUTTONDOWN
&&pMsg-&hwnd ==
((CButton*)this-&GetDlgItem(IDC_ZoomIn))-&m_hWnd)&&
GetDlgItem(IDC_ZoomIn)-&SetFocus();&&
pCflyUSB-&ZMInOut(ZOOM_IN);&&
&&&&&&&&&&
return TRUE;&&
(pMsg-&message == WM_LBUTTONUP
&&pMsg-&hwnd ==
((CButton*)this-&GetDlgItem(IDC_ZoomIn))-&m_hWnd)&&
MessageBox(",,333,");&&
pCflyUSB-&ZMInOut(ZOOM_STOP);&&
return TRUE;&&
(pMsg-&message == WM_LBUTTONDOWN
&&pMsg-&hwnd ==
((CButton*)this-&GetDlgItem(IDC_ZoomOut))-&m_hWnd)&&
GetDlgItem(IDC_ZoomOut)-&SetFocus();&&
pCflyUSB-&ZMInOut(ZOOM_OUT);&&
return TRUE;&&
(pMsg-&message == WM_LBUTTONUP
&&pMsg-&hwnd ==
((CButton*)this-&GetDlgItem(IDC_ZoomOut))-&m_hWnd)&&
pCflyUSB-&ZMInOut(ZOOM_STOP);&&
&&&&&&&&&&
return TRUE;&&
&&& return
CDialog::PreTranslateMessage(pMsg);&&
BOOL AutoFocus::PreTranslateMessage(MSG* pMsg)
&// TODO: Add your specialized code here and/or
call the base class
&AutoFocus *mainDialog = (AutoFocus
*)GetParent();
&static flag = TRUE;
&if (pMsg-&message ==
WM_LBUTTONDOWN
&&pMsg-&hwnd ==
((CButton*)this-&GetDlgItem(IDC_ZoomIn))-&m_hWnd)
&&GetDlgItem(IDC_ZoomIn)-&SetFocus();
&&pCflyUSB-&ZMInOut(ZOOM_IN);
&& return TRUE;
&if (pMsg-&message == WM_LBUTTONUP
&&pMsg-&hwnd ==
((CButton*)this-&GetDlgItem(IDC_ZoomIn))-&m_hWnd)
MessageBox(",,333,");
&&pCflyUSB-&ZMInOut(ZOOM_STOP);
&&return TRUE;
&if (pMsg-&message ==
WM_LBUTTONDOWN
&&pMsg-&hwnd ==
((CButton*)this-&GetDlgItem(IDC_ZoomOut))-&m_hWnd)
&&GetDlgItem(IDC_ZoomOut)-&SetFocus();
&&pCflyUSB-&ZMInOut(ZOOM_OUT);
return TRUE;
&if (pMsg-&message == WM_LBUTTONUP
&&pMsg-&hwnd ==
((CButton*)this-&GetDlgItem(IDC_ZoomOut))-&m_hWnd)
&&pCflyUSB-&ZMInOut(ZOOM_STOP);
&&& return
&return CDialog::PreTranslateMessage(pMsg);
如果对于同一个按钮只响应 buttondown或者buttonup setfocus写不写 都会有
按钮下下去的虚线 显示 按下的状态 但是 如果同一个ID button down 和up 都响应就会没有
虚线显示 就像一个 死按钮,这时候要加入 setfocus 获得焦点 显示 虚线 会好看很多
另外 对于按下时候 如果没有返回值 就会发现 无论点在对话框的如何地方 都会响应下边的函数
儿不仅仅是按钮处,所以要有返回值,
或者使用下边代码
view plaincopy to clipboardprint?
BOOL AutoFocus::PreTranslateMessage(MSG*
GetWindowLong(pMsg-&hwnd,GWL_ID);//&O&E&°&&U¾&±&&&&&AID&&A&&GetWindowLong&I&&&&&A&°&&U&&AID&&A&&&&
if(pMsg-&message==WM_LBUTTONDOWN)&&&&
if(buID==IDC_ZoomIn)
//°&&I&A&&&
&&&&&&&&&&&
pCflyUSB-&ZMInOut(ZOOM_IN);&&
&&&&&&&&&&&
return TRUE;&&
&&&&&&&&&&&
//&O&U&O&&A&&I&¼&O&&&&°&&I&A&E&A¼&&&A³&IÐ&&&
if(pMsg-&message==WM_LBUTTONUP)&&&&
if(buID==IDC_ZoomIn)&&
MessageBox(",,333,");&&
&&&&&&&&&&&
pCflyUSB-&ZMInOut(ZOOM_STOP
&&&&&&&&&&&
return TRUE;&&
&&&&&&&&&&
&&&&&&&&&&&
//&O&U&O&&A&&I&¼&O&&&&&E&E&&&E&A¼&&&A³&IÐ&&&
&&& return
CDialog::PreTranslateMessage(pMsg);&&
BOOL AutoFocus::PreTranslateMessage(MSG* pMsg)
&int buID;
GetWindowLong(pMsg-&hwnd,GWL_ID);//&O&E&°&&U¾&±&&&&&AID&&A&&GetWindowLong&I&&&&&A&°&&U&&AID&&A&&
&if(pMsg-&message==WM_LBUTTONDOWN)&
&&if(buID==IDC_ZoomIn)
&&&pCflyUSB-&ZMInOut(ZOOM_IN);
&&&//&O&U&O&&A&&I&¼&O&&&&°&&I&A&E&A¼&&&A³&IÐ&
&if(pMsg-&message==WM_LBUTTONUP)&
&&if(buID==IDC_ZoomIn)
MessageBox(",,333,");
&&&pCflyUSB-&ZMInOut(ZOOM_STOP
&&&//&O&U&O&&A&&I&¼&O&&&&&E&E&&&E&A¼&&&A³&IÐ&
&return CDialog::PreTranslateMessage(pMsg);
这里开始没有加入setfocus 使得按钮是
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。软件介绍 - [ VC++增强版画图板源码 ]
HDraw v2.9 VC++增强版Windows画图板源码,使用VC开发平台,MFC框架实现一个画图程序,尽可能多的实现Windows自带的画图功能,并扩展其功能。
  功能简介:
  一、基本绘图功能:
  (1)能够用鼠标操控方式,绘制直线、矩形、椭圆。
  (2)在绘图时,选择绘制某种图像后(如直线),在画布中按住鼠标左键后移动鼠标,在画布中实时的根据鼠标的移动显示相应的图形。在松开鼠标左键后,一次绘图操作完成。
  (3)能够在绘制一图形(如一条直线)前设置线的粗细、颜色。(以菜单方式)
  (4)可以以矢量图方式保存绘制的图形。
  (5)可以读取保存的矢量图形文件,并显示绘图的结果。
  (6)有画直线、矩形、椭圆的工具箱。
  (7)有颜色选择工具箱。
  (8)对于当前选中的绘图工具,以&下沉&的形式显示。
  (9)在状态栏中显示鼠标的位置。
  (10)在鼠标移向一工具不动时,有工具的功能提示。
  (11)在菜单上有当前选中的菜单项标识(即前面有小钩)
  (12)可以用鼠标操作方式,通过&拖拽&方式,改变画布的大校
  (13)在画布大而外框小时,应有水平或垂直方向的滚动条。
  二、高级编辑功能:
  (1)具有Undo功能。
  (2)可以用鼠标选中绘制的某一图形。被选中的图形符号有标识(参见Word,如一直线段,其两端点上加了两个小框;矩形上有8个小框点)。
  (3)当鼠标靠近某一目标时,鼠标的形状发生改变
  (4)修改被选中的图形。通过鼠标的&拖拽&,可以改变图形的位置、或大校
  (5)修改被选中图形的颜色、笔划的粗细。
  (6)删除被选中的图形。
  (7)可以使用鼠标&拖拽&一个虚矩形框,一次选择多个图形。
  (8)可以使用 Ctrl 或Shift加鼠标左键选择多个图形对象。
售价:0个M币
相关VC/C++源码:
热门标签:
VC/C++源码搜索
VC/C++源码推荐
热门源码推荐
热门VC/C++源码
©2012 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
.NET下鼠标左键在图形绘制中的应用
下载积分:290
内容提示:VC
.NET下鼠标左键在图形绘制中的应用
文档格式:PDF|
浏览次数:2|
上传日期: 20:25:26|
文档星级:
全文阅读已结束,如果下载本文需要使用
 290 积分
下载此文档
该用户还上传了这些文档
.NET下鼠标左键在图形绘制中的应用
关注微信公众号& VC++模拟鼠标单击、双击的实现
秒后自动跳转到登录页
快捷登录:
举报类型:
不规范:上传重复资源
不规范:标题与实际内容不符
不规范:资源无法下载或使用
其他不规范行为
违规:资源涉及侵权
违规:含有危害国家安全等内容
违规:含有反动/色情等内容
违规:广告内容
详细原因:
任何违反下载中心规定的资源,欢迎Down友监督举报,第一举报人可获5-10下载豆奖励。
视频课程推荐
VC++模拟鼠标单击、双击的实现
上传时间:
技术分类:
资源评价:
(1位用户参与评价)
已被下载&60&次
VC/C++源码,系统相关,鼠标  VC++模拟鼠标单击、双击的实现,也就是在窗体上布局一些按钮,单击这些按钮来模拟鼠标单击或双击后的结果,意在熟悉鼠标点击的原理,并与系统的配合,效果抓图如上。
本资料共包含以下附件:
1-VC++模拟鼠标单击、双击的实现.rar
51CTO下载中心常见问题:
1.如何获得下载豆?
1)上传资料
2)评论资料
3)每天在首页签到领取
4)购买VIP会员服务,无需下载豆下载资源
5)更多途径:点击此处
2.如何删除自己的资料?
下载资料意味着您已同意遵守以下协议:
1.资料的所有权益归上传用户所有
2.未经权益所有人同意,不得将资料中的内容挪作商业或盈利用途
3.51CTO下载中心仅提供资料交流平台,并不对任何资料负责
4.本站资料中如有侵权或不适当内容,请邮件与我们联系()
5.本站不保证资源的准确性、安全性和完整性, 同时也不承担用户因使用这些资料对自己和他人造成任何形式的伤害或损失
相关专题推荐
本专题收录Java经典编程的实例源码,
在国内的开发语言中,java凭借这简单
北京圣思园张龙(风中叶)老师的Java
讲述Arm嵌入式Linux系统下的C语言编程
这段视频是从尚学堂科技的教学课堂上
本套视频共78集,是由郝斌老师根据多
本视频专题共180集涵盖了C语言概述中
本视频专题共107集涵盖了Java概述、数
由传智播客毕向东老师讲解的Java基础
本专题为spring视频教程,共31集。教
本专题为C语言黑客编程系列视频教程,
本专题为韩顺平讲解的Java从入门到精
本专题收集的java开发案例涉及行业广
本专题为Java Web项目开发案例精粹视
SSH为struts+spring+hibernate的一个
本专题为疯狂Java李刚老师讲解的Stru
意见或建议:
联系方式:
您已提交成功!感谢您的宝贵意见,我们会尽快处理}

我要回帖

更多关于 获取鼠标所在窗口句柄 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信