乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 117|回复: 7

捕获Bricscad DRX主窗口事件

[复制链接]

12

主题

63

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
111
发表于 2009-7-10 12:01:36 | 显示全部楼层 |阅读模式
喂!
我尝试使用下面的代码开始拦截到Bricscad主窗口的消息:
WNDPROCg_wprocBcad=NULL;//原始Bricscad窗口过程
HWNDg_hwndBcad=sds_getmainhwnd();//存储Bricscad文档窗口
LRESULT CALLBACK BcadWndProcHook(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam);
LRESULT CALLBACK BcadWndProcHook(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
{
//在此处处理消息
if(hwnd==g_hwndBcad)
{
开关(iMsg)
{
caseWM_RBUTTONDBLCLK:
{
sds_printf(_T("\n r按钮d>sds_printf(_T("\n m按钮db点击"));
中断;
}
}
}
}
返回::CallWindowProc(g_wprocBcad, hwnd, iMsg, wParam, lParam);
}
在InitApp消息中,我调用:
wProcBcad=(WNDPROC)SetWindowLong(g_hwndBcad,GWL_WNDPROC,(LONG)BcadWndProcHook);
奇怪,代码在BRX上运行,但在DRX上没有。
有什么想法吗?
迈克

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

12

主题

63

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
111
发表于 2009-7-10 12:30:52 | 显示全部楼层
很难说,你能发布一个DRX解决方案示例吗?我早上会看一看
回复

使用道具 举报

12

主题

63

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
111
发表于 2009-7-10 12:40:16 | 显示全部楼层
这是如上所述修改的原始 BRX 示例。我们的想法是有一个等效的代码解决方案,但在DRX中。
反应器对我没有帮助,因为我试图用其他东西改变双击动作,以避免默认的各种执行此消息
谢谢!
话筒
回复

使用道具 举报

12

主题

63

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
111
发表于 2009-7-10 12:56:28 | 显示全部楼层
我有点想看看你对DRX做了什么...你是像在这篇文章的顶部一样实现自己的DLLMain吗?
回复

使用道具 举报

12

主题

63

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
111
发表于 2009-7-10 13:39:13 | 显示全部楼层
我也附上了一个DRX的例子。
迈克
回复

使用道具 举报

12

主题

63

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
111
发表于 2009-7-11 02:03:26 | 显示全部楼层
对于处理单个文档,上面的代码非常有效,但是如果在同一个Bricscad会话中打开了多个文档,则会出错。要按预期工作,必须在附加代码中进行一些修改:
1.在kLoadDwgMsg部分
2.在文档反应器中,始终必须将HWND设置为当前:g_hwndBcad=sds_getviewhwnd();
Mike
回复

使用道具 举报

12

主题

63

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
111
发表于 2009-7-11 05:41:31 | 显示全部楼层
听起来合乎逻辑,每个图形编辑器都有自己的框架。我不确定您需要什么事件,但OdEditorReactor具有beginDoubleClick和beginRightClick..
PS,您可以将HWND存储在新的DocData类中
Dan
回复

使用道具 举报

12

主题

63

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
111
发表于 2009-7-13 06:01:00 | 显示全部楼层
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-6 00:45 , Processed in 0.367467 second(s), 68 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表