• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

OLE SDK——框架界面(七):IOleInPlaceFrame::TranslateAccelerator

发布: 2007-7-01 20:40 | 作者: admin | 来源: | 查看: 15次 | 进入软件测试论坛讨论

领测软件测试网

IOleInPlaceFrame::TranslateAccelerator


当一个对象在位激活的时候,有意的为容器的框架翻译加速键。

HRESULT TranslateAccelerator(
LPMSG
lpmsg, //指向结构
WORD
wID //命令标识值
);

参数



lpmsg
包含键信息的MSG结构指针
wID
命令标识值在容器提供的加速表中对应的键。容器应该使用这个值替代重新翻译。

返回值


这个方法支持标准返回值E_INVALIDARG和E_UNEXPECTED,也支持下列:


S_OK
键被使用。
S_FALSE
键没有被使用。

注释


调用者注意

当加速键被为窗口(框架)故意的接收时,IOleInPlaceFrame::TranslateAccelerator方法通过被间接的调用。


实现注意

容器应用程序应该执行它平常的加速处理,或直接使用wID,然后返回加速键是否被处理的指示。如果窗口是一个MDI应用程序,Windows的TranslateAccelerator调用失败,窗口可以调用Windows的TranslateMDISysAccel函数,正象一般的消息处理一样。


应该在翻译加速消息方面给在位(In-place)对象一个机会。然而,因为对象通过DLL对象应用程序实现不能拥有它们自己的消息处理机制,它们从容器的消息循环中接收它们的消息。要确保对象在翻译消息方面有了一个机会,一个容器应该总是在在它自己的加速翻译前,调用IOleInPlaceActiveObject::TranslateAccelerator。相反,一个可执行对象应用程序应该在调用TranslateAcceleratorTranslateMessageDispatchMessage全失败后调用。


注意  你应该为容器定义加速表,这样它们将适当的工作,用对象应用程序做它们自己的加速键翻译。表格应该被象下列一样的定义:

"char", wID, VIRTKEY, CONTROL

这有更多的公共办法来描述键加速。这是最通用的描述加速键的方法。在在位(in-plane)会话期间,如果这种方法失败,将导制建丢失或发送到错误的对象。


快速信息


  Windows NT: 3.1或更高版本。
  Windows: Windows 95或更高版本。
  Windows CE: 不支持。
  Header: oleidl.h。


参见


,


Win32中的,,,


延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网