社区
ATL
帖子详情
ATL控件如何屏蔽ESC键啊?
onestation
2007-12-18 10:14:35
1. 用vc2005创建一个ATL复合控件,不写任何代码直接编译后在容器中运行,按下ESC键窗口消失,点一下鼠标又出现窗口.
跟踪发现反复调用UIDeactivate, 不知道该如何屏蔽啊?
2. ATL控件中所有消息是从哪个函数中转发过来的呢?能不能重写, 就像MFC中的PreTranslateMessage一样,可以在传递消息前过滤, 而不是在各个窗口分开处理?
...全文
123
5
打赏
收藏
ATL控件如何屏蔽ESC键啊?
1. 用vc2005创建一个ATL复合控件,不写任何代码直接编译后在容器中运行,按下ESC键窗口消失,点一下鼠标又出现窗口. 跟踪发现反复调用UIDeactivate, 不知道该如何屏蔽啊? 2. ATL控件中所有消息是从哪个函数中转发过来的呢?能不能重写, 就像MFC中的PreTranslateMessage一样,可以在传递消息前过滤, 而不是在各个窗口分开处理?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
蒋晟
2007-12-19
打赏
举报
回复
1 ESC键是容器处理的,不能在控件中屏蔽
2 ATL控件中所有消息是从容器发过来的,不能在传递消息前过滤,因为你没有办法控制容器的消息循环。
oldmanzhao
2007-12-19
打赏
举报
回复
没有ATL的经验,哪位大侠来解释一下。
leixuejun
2007-12-19
打赏
举报
回复
同意楼上的说法,那是容器的事,你把控件放在其他容器中的就不会有这种情况了.
jameshooo
2007-12-19
打赏
举报
回复
ActiveX测试容器是已经写好的,当然无法屏蔽消息,而且也无需屏蔽消息。在你的控件实际使用中肯定要使用其它容器,比如IE浏览器,你可以实现IDocHostUIHandlerDispatch接口,并把这个接口通过调用SetExternalUIHandler方法连接到浏览器容器控件上,在TranslateAccelerator方法里实现消息屏蔽。
我提供的基于ATL的CDHtmlDialog类里面已经实现了此功能,可以参考一下代码
eduyu
2007-12-19
打赏
举报
回复
ATL没有消息过滤机制,要自己写,但WTL有,就是PreTranslateMessage。
全屏对话框
全屏对话框dlg全屏对话框dlg全屏对话框dlg全屏对话框dlg
ActiveX
控件
在浏览器中的鼠标
键
盘事件处理方法
ActiveX
控件
开发人员如需正确处理在浏览器中的鼠标
键
盘事件,可首先参考一下潘爱民老师的《COM原理与应用》第12章:ActiveX控制,第392页。其中系统阐述了ActiveX
控件
与其容器程序的
键
盘交互原理。1.
控件
初次加载时,进行实地激活。如果基于
ATL
的简单
控件
CComControl,则可在OnCreate中添加。如果基于
ATL
的复合
控件
CComCompositeControl,
ATL
问题集(前31个)
ATL
问题集(前31个) 这些问题是以前在csdn当版主是一些朋友整理的,今天找到了,贴到这里来! #1 如何使用
控件
不能改变大小? 答:有时我们需要创建不可改变大小的
控件
,像那种在运行时没有界面的
控件
(例:时间
控件
,SysInfo 等),想做到这种功能的话,请把以下代码加入到
控件
类的构造函数: m_bAutoSize = TRUE;SIZEL size = {24, 24};
Atl
...
Visual C++ MFC/
ATL
开发-高级篇(二)
MFC中自由使用自定义消息消息映射、循环机制是Windows程序运行的基本方式。VC++ MFC 中有许多现成的消息句柄,可当我们需要完成其它的任务,需要自定义消息,就遇到了一些困难。在MFC ClassWizard中不允许添加用户自定义消息,所以我们必须在程序中添加相应代码,以便可以象处理其它消息一样处理自定义消息。通常的做法是采取以下步骤: 第一步:定义消息。 推荐用户自定义消息至少是WM...
【转载】
ATL
问题集
原文:http://blog.csdn.net/fengrx/article/details/4171629 这些问题是以前在csdn当版主是一些朋友整理的,今天找到了,贴到这里来! #1 如何使用
控件
不能改变大小? 答:有时我们需要创建不可改变大小的
控件
,像那种在运行时没有界面的
控件
(例:时间
控件
,SysInfo 等),想做到这种功能的话,请把以下代码加入到
控件
类的构造函数: m_...
ATL
3,248
社区成员
48,529
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章