在vc sdk里如何让edit接受双击消息啊

alwgg 2012-10-12 11:21:57
在sdk下 有个edit控件,我想 双击此edit 来做一些动作, 请哪位仁兄给个例子,谢谢 困扰好几天了都
...全文
156 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eleven 2012-10-13
  • 打赏
  • 举报
回复
SetWindowLong(GWL_WNDPROC)
重写窗口回调函数,添加处理WM_LBUTTONDOWN
漫步者、 2012-10-13
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

问题已经解决 通过子类化控件的方法实现, 为了照顾不知道还有多少同我一样被困扰在此的菜鸟朋友们 特此贴出我的处理 示例C/C++ code
#include <locale>
#include <Windows.h>
#include "resource.h"
LONG DefWndProc = NULL ;

LRESULT CALLBACK EditNewProc ( HWND hE……
[/Quote]
直接用窗口的函数,在相对应的类中添加COMMAND就行了吧
alwgg 2012-10-13
  • 打赏
  • 举报
回复
问题已经解决 通过子类化控件的方法实现, 为了照顾不知道还有多少同我一样被困扰在此的菜鸟朋友们 特此贴出我的处理 示例
#include <locale>
#include <Windows.h>
#include "resource.h"
LONG DefWndProc = NULL ;

LRESULT CALLBACK EditNewProc ( HWND hEdit, UINT uMsg, WPARAM wParam, LPARAM lParam )
{
switch(uMsg)
{
case WM_LBUTTONDOWN :
printf("左键被按下\n");
break;
case WM_LBUTTONUP:
printf("左键被松开\n");
break;
case WM_LBUTTONDBLCLK:
printf("左键双击\n");
break;
}
return CallWindowProc ( (WNDPROC)DefWndProc, hEdit, uMsg, wParam, lParam ) ;
}

//窗口消息的回调函数
BOOL WINAPI DialogProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{

LONG DlgWndProc, EditWndProc ;
switch(uMsg)
{
case WM_INITDIALOG:
{
DefWndProc = SetWindowLong(GetDlgItem(hWnd,IDC_EDIT1),GWL_WNDPROC,(long)EditNewProc );
DefWndProc = SetWindowLong(GetDlgItem(hWnd,IDC_EDIT2),GWL_WNDPROC,(long)EditNewProc );
return TRUE;
}
case WM_CLOSE ://关闭消息
EndDialog(hWnd,1);
}
return false;
}

int main()
{
::DialogBox(NULL, MAKEINTRESOURCE(IDD_DIALOG1),NULL, DialogProc);
return 0;
}

alwgg 2012-10-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

响应对话框双击事件-》获取edit区域,判断鼠标位置是否在edit区域
[/Quote]

问题是,双击窗口的时候会产生 WM_LBUTTONDBLCLK消息,而单击edit的时候并未产生WM_LBUTTONDBLCLK消息,
如果仁兄,知道此问题的话请给个示例好吗
alwgg 2012-10-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

双击添加信息处理。
[/Quote]

对你的回答表示无语..
漫步者、 2012-10-13
  • 打赏
  • 举报
回复
双击添加信息处理。
冷月清晖 2012-10-13
  • 打赏
  • 举报
回复
响应对话框双击事件-》获取edit区域,判断鼠标位置是否在edit区域

65,189

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧