问题标签 [mfc-feature-pack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
664 浏览

visual-studio - 新的 MFC 功能包控件是否应该出现在 VS 工具箱中

我正在尝试使用 VS2008 SP1 在现有 MFC 应用程序上使用一些新的 MFC 功能包控件。对话框编辑器工具箱中不会出现任何新控件。

我是否应该期望它们出现在那儿,如果是这样,人们对如何让它们出现有什么建议吗?

0 投票
2 回答
1999 浏览

mfc - 使用 PropSheetLook_OneNoteTabs 样式动态调整 CMFCPropertySheet 的大小

我正在尝试动态调整 aCMFCPropertySheet以在每个页面的底部添加自定义控件。

由于所有属性页的高度不同,我有一种机制可以在必要时增加大小。为此,我重写了该OnActivatePage方法,并使用SetWindowPos,我可以调整工作表的大小,首先是选项卡控件,然后是页面,最后我可以移动 OK/Cancel/Help 按钮。

它适用于PropSheetLook_OutlookBarPropSheetLook_Tabs样式,但不适用于PropSheetLook_OneNoteTabs样式。页面(或选项卡)未正确调整大小(页面的浅灰色未填满工作表。

OneNote 风格OneNote http://www.freeimagehosting.net/uploads/th.ec91600664.jpg

Outlook 风格Outlook http://www.freeimagehosting.net/uploads/th.319b6938ab.jpg

任何想法?MFC 功能包错误?

0 投票
2 回答
1242 浏览

c++ - 删除后的 CVSListBox 通知

我刚刚向项目中添加了一个新的(MFC 功能包)CVSListBox 控件。控件中的项目列表由我的应用程序中的其他一些对象跟踪,因此当有任何更改时,我需要从列表框中获取大量通知,以便我可以更新其他内容。对于那些不知道该控件的人,有一个按钮栏提供基本的添加/删除/重新排序功能。

CVSListBox 控件为诸如添加或重命名项目以及更改它们的顺序之类的事情提供了可覆盖的虚函数——所有这些都很好地工作。

但是,对于删除项目,唯一的替代是 OnBeforeRemoveItem,它在项目被删除之前调用,并且必须返回 TRUE/FALSE 以允许删除。一旦删除发生,就没有具体的通知。

删除后获得通知的最佳方式是什么?

显然,这里有可能破解一些可怕的东西,因为在删除之后会有一个选择更改事件,并且可以从删除前保留一个标志来表示下一个选择更改是特殊的。但我觉得我错过了一些更清晰、更明显的东西。有什么建议么?

0 投票
3 回答
3257 浏览

mfc-feature-pack - 如何使用 CMFCRebar 产生可接受的外观和感觉?

我正在尝试使用 MFC Feature Pack 中的一些类来改进我的 MFC 应用程序的外观。

在我的应用程序中,我使用一个 CReBar 对象来停靠三个不同的工具栏。我已经更新了这个对象的类以使用 CMFCReBar,但是在使用某些视觉样式时它看起来并不好。

Feature Pack 中似乎存在问题,因为即使使用 package.json 部署的 RebarTest 示例也会发生这种情况。

这是示例应用程序的屏幕截图,只是将视觉样式更改为 Office 2007(使用 app.menu 而不是代码):

RebarTest 示例应用程序的屏幕截图 http://img105.imageshack.us/img105/1057/rebartestep5.png

有人成功使用过 CMFCReBar 吗?有没有其他方法可以在不使用它的情况下达到同样的效果?

0 投票
3 回答
6183 浏览

mfc-feature-pack - MFC DockablePane 不浮动或隐藏

有什么方法可以使停靠在无法浮动或隐藏的窗口中的 MFC DockablePane(来自新功能包)无法浮动或隐藏(甚至禁用允许用户选择状态的上下文菜单 - 可停靠、浮动、隐藏ETC。)

我基本上想要的是在一个窗口上有3个窗格,可以改变它们的水平尺寸,但不能改变它们在窗口内的位置。有什么建议吗?

0 投票
2 回答
11064 浏览

c++ - 禁用/启用 MFC 功能包的功能区按钮

我正在使用 MFC 功能包,并且在功能区栏上有一些按钮,即 CMFCRibbonButton 的实例。问题是我想在某些条件下启用和禁用其中的一些,但在运行时。我怎样才能做到这一点?因为对此没有特定的方法...我听说解决方案是在运行时附加/分离事件处理程序,但我不知道如何...

0 投票
7 回答
4860 浏览

ribbon - MS Ribbon/Office UI 许可证值得担心吗?

想象一下,我想使用 VS2008 中的 C++ 和 MFC Feature Pack 创建一个与 MS Word 2007 非常相似的应用程序。对于功能区,我可以使用 3 个选项:

  1. 无需获取许可证即可使用 MFC Feature Pack 中的功能区。
    从长远来看,可能是狡猾的。在您的产品获得全球成功之前,您一切都好,此时 MS Legal 会派出重头戏。但他们真的能做些什么吗?

  2. 使用 MFC Feature Pack 中的功能区,但尝试获取许可证。
    我相信如果我应该尝试注册Office UI License,我很有可能会因为它是竞争产品而被拒绝:

    该许可证适用于任何平台上的应用程序,但与当前具有新 UI 的五个 Office 应用程序(Microsoft Word、Excel、PowerPoint、Outlook 和 Access)直接竞争的应用程序除外。

  3. 使用第 3 方功能区控件。
    如果我以大约 500 英镑的价格从BCGSoft购买 BCGControlBar 库的许可证——MS在 MFC 功能包中使用了它的功能区栏——那么我可以毫无问题地在我的应用程序中使用功能区。

除非绝对必要,否则我不想花任何钱。如果我使用选项#1 直到我对此感到麻烦,我可以放弃它并选择#3 怎么样?会不会太晚了?

当然以上都是假设的......;)


注意:我不关心与我的产品和 Word 之间的相似性相关的任何专利或版权,这只是一个示例。这个问题只涉及功能区许可方面。

0 投票
2 回答
1649 浏览

c++ - 是否可以从 CMFCRibbonCategory 中删除 CMFCRibbonPanel?

我正在寻找CMFCRibbonPanelCMFCRibbonCategory. 中只有AddPanel()函数CMFCRibbonCategory,没有RemovePanel()

我真的需要重建我的整体CMFCRibbonCategory来做到这一点吗?

只是为了澄清,我想要的是从类别中删除面板本身,而不是从面板中删除元素。

0 投票
2 回答
4137 浏览

c++ - 更改 CMFCToolbar 中菜单按钮的图像

我在 a 中有一个菜单按钮CMFCToolbar,每次在菜单中选择不同的条目时,我想替换按钮的位图,因为每个条目都有自己的图标。

我成功地使用CMFCToolBarMenuButton::SetImage了更改图标,但它也更改了菜单条目中的图标。太糟糕了。

替代文字 http://www.freeimagehosting.net/uploads/137269b0f2.jpg 替代文字 http://www.freeimagehosting.net/uploads/879d03843a.jpg

这是一个代码示例:

有任何想法吗?谢谢你。

0 投票
1 回答
3304 浏览

mfc - 向 CMFCToolBar 按钮添加下拉箭头

谁能解释如何向 CMFCToolBar 工具栏按钮添加下拉箭头 - 例如撤消/重做按钮。我们通过使用 TBSTYLE_EX_DRAWDDARROWS 样式和 TBN_DROPDOWN 通知在 CToolBar 中实现了这一点。这似乎不适用于 CMFCToolBar。我相信这些下拉箭头已添加到 VisualStudioDemo MFC 功能包演示中,但我不知道如何。