OLE SDK——框架界面(一)

VC-SDK-OLE 专栏收录该内容
7 篇文章 0 订阅

IOleInPlaceFrame

IOleInPlaceFrame界面控件着容器的顶级框架窗口。控件涉及允许容器去插入它的菜单组到复合菜单中,在适当的窗口框架中安装复合菜单,并从复合菜单移去容器的菜单标记。它设置和显示状态文本到相关的在位(in-place)对应。它也激活或禁止框架的非模式对话框,并预期的为容器框架翻译加速键。

什么时候实现

如果你要写一个被在位(in-place)激活的容器应用程序,你将需要实现这个界面。

什么时候使用

这个界面被对象应用程序使用来控件显示和布置复合菜单,键加速翻译,上下文相关的帮助模式和非模式对话框。

在V表(VTable)序列中的方法

IUnknown方法描述
QueryInterface返回指定界面的指针。
AddRef增加引用个数
Release减少引用个数

IOleWindow方法描述
GetWindow获得一个窗口句柄。
ContextSensitiveHelp控件使用上下文相关的帮助可用。

IOleInPlaceUIWindow方法描述
GetBorder翻译消息。
RequestBorderSpace容器顶级框架的状态。
SetBorderSpace容器文档窗口的状态。
SetActiveObject小心需要的对象调整边框的间距。

IOleInPlaceFrame方法描述
InsertMenus允许容器插入菜单。
SetMenu添加复合菜单到窗口框架。
RemoveMenus移去一个容器的菜单标记。
SetStatusText设置和显示状态文本。
EnableModeless激活或禁止非模式对话框。
TranslateAccelerator翻译加速键。

快速信息

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

参见

IOleWindow, IOleInPlaceUIWindow

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
对于VC初学者来讲,可能有点帮助,当然,对于WinSDK编程,我也是刚刚接触。如果你对WinSDK编程较熟,请与我联系,咱们共同来把这个专题做好,如果你发现了什么错误,也麻烦你给我留言指正。我写的内容也基本上是我自己的些理解,错误是肯定有的,如果你发现我的理解偏差很大的话,麻烦你提醒下。---小朱! 什么是WinSDK: 大致说来windows编程有两种方法: 1.windwos c方式(SDK), 2.c++方式:即对SDK函数进行包装,如VC的MFC,BCB的OWL等,如果要深入 下去,还是要熟悉SDK。 两种方法有哪些区别呢:SDK编程就是直接调用windows的API进行编程,但是有上千个API组成(win95的API有两千多个),这种数目太大了,对于编程显然不利。而MFC把这些API封闭起来,共有百多个类组成。般只需20多个windows类和另外20多个通用的非windows类就可"干活"了,这改变无疑是有很大好处的。尽管MFC如此方便,但是要学VC,直接去学MFC却是不明智的选择。只有在熟悉了MFC的运行机制的情况下,才有可能深入下去。那些如多少天精通什么什么的书籍其实讲的全是些如怎么使用VC这种工具的话题,学来学去学会了怎么会使用VC这种工具,而不能深入 MFC编程。象VB这类工具就更令人感觉到太闷了,不过各有各的好处。 MFC虽然提高了程序员编程的效率,但是也失去了SDK编程的灵活性.....不好意思,跑题了.... 本专题假定: C语言是windows的源语言,用C进行SDK编程是最合适的,你应该至少学过C语言,知道C语言的各种语法等,当我说到指针等类似概念的时候,你不至于茫然就行了。 你还应该安装了Visual C++6.0,低版本的就不用用了吧,D版的才几块钱吗? 推荐与参考资料: 1.Petzold的 [programming windows by petzold],这是我看过的本书(电子书),不过是E文的,我只看了半,"下载空间"栏能供了该电子书。中文版的是[Windows 程序设计](包括上,下卷),Charles Petzold著,北京博彦发展有限公司译,北京大学出版社出版,本书唯的缺点就是太贵,价格是160元。些朋友让我多推荐些这方面的书,我也没办法,是这类书目前本就很少,二是如果你非要买的话,肯定要买这本书了,可是经典呢!! 2.还有本老书值得提,可能市面上已经买不到了,书名[Windows 编程],刘振安著,人民邮电出版社出版发行。个朋友曾借给我看了几天我又还了,很容易读懂的,不过看日期,95年出版,得!没希望了。我们学校图书馆好像也有几本,不过好像都很烂。 3.VC的在线帮助MSDN,有关SDK的资料在"Platform SDK"栏中。 下面再加深几点概念: 什么是API: 什么是API,有必要再谈下,特别对于从TC过来的朋友和初学编程的朋友。API,全称application program interface,意思是应用程序编程接口(说起API并不仅仅指windows而言,windows支持的API叫winapi)。winapi就是应用程序和windows之间通讯的个编程界面windows提供了上千个API函数,以方便程序员来编写应用程序。做数据库管理系统是很少和API 打交道的,我以前学PB,看的十几本书都没有专门的章节来介绍API的。只有到网上看那些PB技巧之类的文章才谈及API,不过还要加入大堆声明之类的东东。好像VB也是这样。总之,进行系统编程,API是必不可少的。API是每个VC高手的必过的关。 什么是WinSDK编程: WinSDK 程序设计就是API方式的windows程序设计。SDK,全称Software Developers Kit,意思是软件开发工具箱。它是在windows程序设计早期,程序员进行windows程序设计所必须购买的个软件包(不知道那时候有没有D版的)。我两个月前见SDK还不知所云。开始进行WinSDK编程用C语言最好,可以撇开C++的特性专心熟悉下Win32编程的思路以及了解 windows的消息运行机制。等把这些有所了解后,慢慢转向C++和MFC编程。不过我的观点是WinSDK编程永远要慢慢进行下去,直接接触底层代码对MFC源码的理解是有很大好处的。上周开始用MFC时,按F11进行单步跟踪,开始见到"_tWinMain"这样古怪的东东也没有感觉到太大的迷惑,不就是相当于SDK编程中的WinMain函数吗? 什么是MFC: MFC,全称Microsoft Foundation Classes,伪软把WinAPI进行封装的类库。它是个类的集合,通过覆盖WinAPI,为编程提供了个面向对象的界面。它使windows程序员能够利用C++面象对象的特性进行编程,类似BCB的OWL,Delphi的VCL组件。它把那些进行SDK编程时最繁琐的部分提供给程序员,使之专注于功能的实现。你不妨把它想象成类似TC提供的函数库吧。用Visual C++这种开发工具编程时,可以用MFC,也可以不用,但MFC是VC的精华所在,从某种意义上来说,不会MFC就是不会使用VC。研究MFC源代码是件既快乐又痛苦的事情,不过,阵痛之后,嘻嘻,...... 怎么进行WinSDK编程: Visual C++6.0:File-->new-->Projects-->Win32 Application(project name)-->...... 我们既然用C语言进行,就选第项"An empty project"...... ...... 好累,这篇就写这么多吧,但愿对你有帮助,也建议多给我提意见,你的反馈是我最大的动力渊源......
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值