CEdit添加鼠标事件处理
来源:互联网 发布:unity3d的web控件 编辑:程序博客网 时间:2024/05/29 15:42
注:本方法适合MFC中 如 CEdit 本身不支持鼠标消息处理的控件但是需要鼠标鼠标事件的支持情况下变通使用;
1、本文以CEdit为例;
2、为CEdit控件所在的父窗口所关联的类重载 PreTranslateMessage 方法;
3、在 PreTranslateMessage 方法对对关心的消息进行过滤,并添加自己的消息处理代码;
示例代码如下:
- BOOL CDatabaseSetting::PreTranslateMessage(MSG* pMsg)
- {
- // 当单击数据库文件名文本框时弹出文件对话框选择数据库文件
- if(pMsg->message == WM_LBUTTONDOWN)
- {
- CEdit* ptr = (CEdit*)GetDlgItem(IDC_TEXTBOX_DB_FILENAME);
- CRect rect;
- ptr->GetWindowRect(&rect);
- if( rect.PtInRect(pMsg->pt) )
- {
- CFileDialog dlgFile(TRUE);
- CString fileName;
- const int c_cMaxFiles = 100;
- const int c_cbBuffSize = (c_cMaxFiles * (MAX_PATH + 1)) + 1;
- dlgFile.GetOFN().lpstrFile = fileName.GetBuffer(c_cbBuffSize);
- dlgFile.GetOFN().nMaxFile = c_cMaxFiles;
- dlgFile.DoModal();
- MessageBox(fileName);
- fileName.ReleaseBuffer();
- }
- }
- return CDialogEx::PreTranslateMessage(pMsg);
- }
本文出自 “快乐生活,开心工作” 博客,请务必保留此出处http://shunge.blog.51cto.com/2944070/729947
0 0
- CEdit添加鼠标事件处理
- 为鼠标点击事件添加全局效果处理
- 鼠标事件的添加
- JS 添加鼠标事件
- OpenCV添加鼠标事件
- 添加鼠标事件侦听
- 处理鼠标移出事件
- 处理鼠标移出事件
- DataGrid鼠标事件处理
- DataGrid鼠标事件处理
- DataGrid鼠标事件处理
- DataGrid鼠标事件处理
- DataGrid鼠标事件处理
- 处理鼠标移出事件
- 鼠标事件的处理
- 鼠标事件处理
- Glut处理鼠标事件
- C#处理鼠标事件
- matlab常用函数
- 自定义圆形头像
- Linux常用操作指令
- 嵌入式笔试题目
- Binary Tree Maximum Node
- CEdit添加鼠标事件处理
- TCP/IP基础(一)
- 计算机常用的英语术语(不定时更新)
- Java实现excel简单的读写操作
- 1017. A除以B (20) python篇
- 数字三角形问题
- 关于c++中的拷贝构造函数(复制构造函数)
- IRC 服务以及freenode
- TCP和1448