MFC中状态栏显示鼠标坐标位置

时间:2022-09-09 18:48:02

1,利用MFC向导创建一个应用工程ewq。

2,打开ResourceView,右击Menu菜单,插入Menu,在空白处双击,Caption中填入Point。

3,为Point设置下拉菜单,ID为ID_INDICATOR_POINT;Caption为point;Prompt为X:XXXX,Y:YYYY。

4,打开MainFrm.cpp,在indicators数组中的第二个位置添加ID_INDICATOR_POINT。

5,将MainFrm中的成员变量m_wndStatusBar修改为公有变量,并在视图类中添加头文件#include
"MainFrm.h"。

6,利用类向导添加鼠标移动消息处理函数WM_MOUSEMOVE(),并添加如下代码为:

void CEwqView::OnMouseMove(UINT nFlags, CPoint point)

{

// TODO: Add your message handler code here and/or call
default

CClientDC  
dc(this);  

CMainFrame *pFrame=(CMainFrame
*)AfxGetApp()->m_pMainWnd;
 

CStatusBar *pStatusBar=(CStatusBar
*)&pFrame->m_wndStatusBar;
 

CString   str;
 

str.Format("X:%d,Y:%d",point.x,point.y);
 

   CSize
size=dc.GetTextExtent(str);  

int
nIndex=pStatusBar->CommandToIndex(ID_INDICATOR_POINT);
 

pStatusBar->SetPaneInfo(nIndex,ID_INDICATOR_POINT,SBPS_NORMAL,size.cx);
 

pStatusBar->SetPaneText(nIndex,str);
 





CView::OnMouseMove(nFlags, point);

}

7,成功运行,在状态栏中第二个位置显示鼠标的当前坐标。

MFC中状态栏显示鼠标坐标位置的更多相关文章

  1. Java 获取Word中指定图片的坐标位置

    本文介绍通过Java程序获取Word文档中指定图片的坐标位置. 程序运行环境: Word测试文档:.docx 2013 Free Spire.doc.jar 3.9.0 IntelliJ IDEA J ...

  2. vue中 使用SVG实现鼠标点击绘图 提示鼠标移动位置 显示绘制坐标位置

    <div class="div1"> <svg id="svg1" xmlns="http://www.w3.org/2000/sv ...

  3. OpenCV学习笔记——点击显示鼠标坐标

    点击显示鼠标显示坐标,再次点击时上一次的坐标的会消失…… #include<highgui.h> #include<cv.h> void on_mouse(int event, ...

  4. Python3 tkinter基础 Frame bind 鼠标移动事件 实时显示鼠标的位置

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  5. div内鼠标坐标位置及绝对和相对坐标获取

    JQuery 获得div绝对,相对位置的坐标方法   1 2 3 4 5 6 获取页面某一元素的绝对X,Y坐标 var X = $('#DivID').offset().top; var Y = $( ...

  6. js实时显示鼠标坐标

    <!DOCTYPE html><html><head>    <meta charset="utf-8">    <title ...

  7. mfc中循环显示图片

    UINT CPalmIdentDlg::UpdateCImg(LPVOID p) { struct params *pa = (struct params*)p; int *imgarray = pa ...

  8. js获取鼠标坐标位置兼容多个浏览器

    这个是IE 11 下兼容下视图测试时可用. $(window).bind('beforeunload', function (event) { var _this = this; var x = ev ...

  9. MFC 中MessageBox 显示在所有窗口的最上面

    int MessageBox(   HWND hWnd,          // handle of owner window   LPCTSTR lpText,     // address of  ...

随机推荐

  1. JAVA定时执行任务的三种方法

    1.利用 java.util.Timer 这个方法应该是最常用的,不过这个方法需要手工启动你的任务 Timer timer=new Timer(); timer.schedule(new ListBy ...

  2. lower&lowbar;bound和upper&lowbar;bound算法

    参考:http://www.cnblogs.com/cobbliu/archive/2012/05/21/2512249.html ForwardIter lower_bound(ForwardIte ...

  3. docker &amp&semi; nodejs &amp&semi; mongodb

    Nodejs 应用简单的访问Mongodb 部署至Docker 1.本地简单的写能运行起来的一个nodejs (demo可写的更简单 一个post一个get即可) schemas  user.js v ...

  4. bzoj3223 Tyvj 1729 文艺平衡树(Splay Tree&plus;区间翻转)

    3223: Tyvj 1729 文艺平衡树 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 2202  Solved: 1226[Submit][Sta ...

  5. javascript 延时执行函数

    延时执行函数,貌似有些多此一举, 也许还是有点用 记在这儿 var test = { delay : function(lifetime){ var data; setTimeout(function ...

  6. Windows 自动化补丁管理

    Windows 自动化补丁管理 Desktop Central,这一倍受欢迎的补丁管理软件旨在修补可能导致安全薄弱.破坏关键系统数据或导致系统不可用的漏洞.管理此类软件漏洞对网络管理员来说简直是噩梦. ...

  7. oracle having字句

    现在要求查询出职位的平均每个职位的名称,工资,但是要求显示的职位的平均工资高于2000.        即:按照职位先进行分组,同时统计出每个职位的平均工资        随后要求直显示哪些平均工资高 ...

  8. java面试题002

    1.判断下列代码的运行情况 public class TestExtends { public static void main(String[] args) { Father obj = new S ...

  9. Linux安装及入门

    Linux安装及学习 Linux遇到的问题: 在安装过程中因为代码输错(少空格)而质疑自己下载的ubuntu和virtualbox版本,于是卸载之后重新安装了一次,后来才发现是代码输错了(教程中的空格 ...

  10. ElasticSearch介绍与安装

    什么是ES? 1基于Apache Lucene构建的开源搜索引擎 2采用java编写,提供简单易用的RESTFul API 3轻松的横向扩展,可支持PB级的结构化或非结构化数据处理 ES的应用场景? ...