【发布时间】:2015-02-17 19:41:09
【问题描述】:
我目前正在使用 C++ 和 WINAPI 开发桌面应用程序。我想为应用程序的主窗口使用功能区控件(就像在较新的办公应用程序中找到的那种)。我已经成功创建了 XML 文件、COM 接口,并且我还设法让功能区显示在应用程序窗口中。
功能区当前看起来像 MS Paint 中的功能区。 (抱歉,我无法发布图片)。
我一直在尝试自定义功能区,使其看起来更像 MS Word 2010 中的功能区。
我想要确定的更改是:
1) 应用程序的标题在标题栏中居中
2) 让标题栏淡入\合并到功能区中(与窗口框架的边框相对,在标题栏和功能区之间画一条线)
3) 将“自定义快速访问栏”菜单移动到垂直分隔符的右侧。
4) 更改功能区最左侧的蓝色按钮,使其具有 上面写着“文件”
我基本上没有成功,因为功能区似乎无法使用 Microsoft 公开的接口和 API 以这种方式进行自定义。
因此,我的问题是:有没有一种方法可以使用现有的功能区 API 创建上述效果,或者 MS Office 功能区是否是未记录的功能甚至可能是大量黑客攻击的结果(枚举窗口句柄并违反边界界面)。
【问题讨论】:
-
您是否已经尝试过?它奏效了吗?如果没有,究竟是什么不起作用?否则你的问题太宽泛了。
-
MS Office 不使用标准功能区。他们从头开始编写自己的代码。
标签: c++ winapi com windows-ribbon-framework