问题标签 [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.
c++ - 在 MFC 中将 CFrameWnd 更改为 CFrameWndEx 会导致未处理的异常 - 有什么想法吗?
仍然习惯了这个 MFC 百灵鸟,我在这个特殊问题上遇到了困难。我正在更新一些遗留代码以使用 MFC 功能包中提供的一些更精细的控件。
按照在线给出的更新旧 MFC 应用程序的示例,将基本应用程序类更改为 CWinAppEx 工作正常,但是当我将 CFrameWnd 更改为 CFrameWndEx 时,我收到来自 mfc90d.dll!AFXGetRegPath 某处的调试断言失败错误消息。忽略此消息会导致大量 0xC0000005:访问冲突错误。
对于如何解决此问题的任何建议,我将不胜感激。
干杯。
visual-studio-2008 - 如何使 CMFCRibbonEdit 自动将内容转换为大写?
我在 Visual Studio 2008 中使用 MFC 功能包。我在功能区中有一个编辑框 (CMFCRibbonEdit),我只想包含大写字母。我知道我可以将 ES_UPPERCASE 传递给“Create”方法,但是“Create”是从功能区本身调用的,而不是由我的代码显式调用的。
要将编辑框添加到我的功能区,我称之为:
根据我在 MSDN 上阅读的内容,我看到我可以重载 CMFCRibbonEdit 的“CreateEdit”功能。我试过了,但是没有用。
在初始化我的功能区及其控件后,我还尝试进行此调用。这也不起作用。
有谁知道我怎么能做到这一点?
visual-c++ - 如何更改 RibbonStatusBarPane 文本颜色?
我的应用程序正在使用 MFC 功能区(VS2008 + Feature pack9)。我无法更改 RibbonStatus 栏窗格文本颜色。我覆盖了虚拟 int DrawPaneText(CDC* pDC, const CString& strText, CRect rectText, UINT uiDTFlags) 函数,但事情不起作用。
在非功能区状态栏中,有一个函数 void SetPaneTextColor(int nIndex, COLORREF clrText = (COLORREF)-1 , BOOL bUpdate) 以更改窗格文本颜色。
如何在 MFCRibbonStatusBarPane 中执行此操作?
c++ - 放弃 CMainFrame 中的 ALT 键按下
我有以下代码:
问题是,当我按下时<ALT>
,菜单(IDR_APP_MAINFRAME)会弹出。我怎样才能总是隐藏菜单而不响应按下?
我听说这是由于 MFC 中的加速器控制,但我在使用 VS2008 的项目解决方案中看不到该控制。
visual-studio-2010 - Visual Studio 2010 - 带有功能区 UI 的 C++ MFC 应用程序 - 位图中的透明度
我正在使用 Visual C++ 2010 中由 MFC 向导生成的小型应用程序,我只是决定将我自己的位图放入资源中以替换显示在功能区 UI 应用程序按钮中的三立方体 MFC 位图,又名“大理石”。
原版似乎使用黑色 (0,0,0) 作为透明度颜色,但我无法确定 Visual Studio 2010 中的 MFC Ribbon (mfc-feature-pack stuff) 东西在确定用作位图的透明度时所做的事情功能区的主图标。
功能区 (IDR_RIBBON) 的属性显示 Image=IDB_MAIN,IDB_MAIN 是 BMP 格式的 32x32 位图,从名为 main.bmp 的磁盘文件加载。
这个项目中的一些位图资源看起来像我所期望的那样:变成透明的洋红色,但是 MFC 主位图没有使用这种配色方案或调色板。
这是一个实际结果的例子,我希望这表明结果不是我想要的:
顺便说一句,在应用程序按钮中使用 ICON 资源似乎是不可能的,所以我有点迷惑他们是如何取消其中的透明度的。
c++ - 是否可以操作我的 CMDIFrameWndEx 的 CMFCMenuBar 的菜单?
我的主框架有一个 CMFCMenuBar 成员,其中包含当前文档类型的菜单。我想动态添加/删除子菜单。例如,如果用户选择显示地图窗格,我想在“文件”菜单旁边添加地图子菜单。
反之亦然,如果地图窗格关闭,我还想删除地图菜单项。
一件有效但我不喜欢的事情是简单地禁用ON_UPDATE_COMMAND_UI
处理程序中的菜单项。
Frame 有一个调用方法,GetMenuBar()
但该方法返回给我 aconst CMFCMenuBar *
所以我不能从外部修改它。我添加了一个吸气剂,所以我得到了对菜单栏的非常量引用,但这也不起作用:
上面的代码是void CMyMenuBar::AddSubMenu ()
对DynamicMenu
示例的改编。不过,我有一种感觉,这个示例被破坏了,因为我无法确定是否或何时执行该特定代码。在示例中,代码仅在菜单栏被重置或尚未将状态保存到注册表时执行。
这是不可能的还是我做错了什么?
添加/删除子菜单是否有一个不错的选择?
windows - MFC:是否有事件检测 CDockablePane 派生窗口何时通过滑出或显示打开?
我想延迟 CDockablePane 派生窗口的初始化,直到窗口实际显示。如果窗口只是停靠,那么 WM_SHOWWINDOW 非常有效,但是当窗口处于 AutoHideMode WM_SHOWWINDOW 时是不可预测的,我看不到表明滑出已完成的事件。
有什么建议吗?
visual-c++ - C++ MFC Feature Pack --> 在 CDialog 上创建多个 CDockablePanes
我尝试在 CDialog 上创建一个区域,我可以在其中放置一些 CDockablePanes。这些应该完全可停靠到固定的对话框内容。
Codejock 对话框窗格示例正是我想要的,但通过 MFC 功能包类实现:http ://codejock.com/downloads/samples/dockingpane.asp
目前我得到了一个继承自 CFrameWndEx 的类,它嵌入在 CDialog 中。我还有一个工作 CDockablePane 在里面。我可以取消停靠并移动它,但是当我想停靠它时,程序会崩溃。
这是因为可停靠窗格类尝试生成一个虚拟窗格来预览真实窗格的位置。它调用返回 NULL 的 GetTopLevelFrame()。这会在 afxpane.cpp @CreateEx() 中产生崩溃。
有人对我有什么帮助或想法吗?:(
问候,
编辑:
好的,一些代码:
我写了一个继承自 CFrameWndEx 的小类(因为它的构造函数受到保护):
现在我将这个类嵌入到我的 CDialog 中并将其大小更改为对话框大小:
在 CMyFrame 类的 OnCreate() 中,我设置了 CDockablePane 并将其停靠:
mfc - Office 2010 风格的 MFC 功能包
我使用 vs2008 和 MFC Feature pack 2008 在 mFC 中开发了应用程序。它的外观和感觉就像 2007 年的办公风格。现在我想要应用程序的外观和感觉就像 Office 2010。你能解释我怎么做吗?
visual-c++ - C++、MFC 功能包、Mdi 子级可见性
我在 vs2008 中有一个 MDI MFC FEATURE PACK 应用程序。
我确实需要确定哪些子窗口是可见的,即使用户创建了多个选项卡组,以及最后激活的 MDI 子窗口是什么。我发现在我的大型机CMDIFrameWndEx
类中,方法
这可能让我浏览所有选项卡组。麻烦的是这些方法返回一个CMFCTabControl
不提供任何方法/成员来获取指向选项卡中 MDI 子窗口的指针。它只给出活动选项卡的索引。那么如何获取CMDIChildWndEx*
给定选项卡组的“前面”窗口的指针呢?