mfc相关内容

从 CImageList 设置菜单项位图的难度

我有一个在特定情况下会提示的菜单.我有一个位图图像,其中包含我要添加到菜单中的图标. 首先,我加载图像列表如下: CImageList imageList;imageList.Create(18, 16, ILC_COLOR24|ILC_MASK, 0, 0)CBitmap 位图;bitmap.LoadBitmap(IDR_CL2_TAB_MENU_OPTIONS);imageList.Add ..
发布时间:2022-01-12 15:20:23 C/C++开发

如何在 MFC 中调整对话框大小时移动控件?

我已经在 MFC 中查看了对话框. 从下图可以看得很清楚.(如滑块控件和编辑框等) 当我调整对话框大小时,这些控件不会移动. 在此处输入图片描述 我想移动控件以适应对话框.但不需要调整控件的大小. 我应该怎么做才能解决这个问题? 更新 1 特别是,我想设置滑块位置. 首先,我将滑块“CSliderCtrl sss"的成员变量添加到对话框类,然后我在 ..
发布时间:2022-01-12 15:20:15 C/C++开发

如何在 MFC 的 CRichEditCtrl 中显示红色波浪线

我正在努力在 MFC 应用程序中实现拼写检查器.我想要做的是在拼写错误的单词下显示红线. 我找到了一个示例,但它仅适用于简单的编辑框,因为它可以简单地使用编辑控件默认字体进行计算以绘制波浪线.但它不适用于丰富的编辑控件,因为在丰富的编辑控件中,不同的单词可能有不同的字体.在这种情况下,我发现的示例在不正确的位置画线. 如果有人已经为 CRichEditCtrl 做过这个,请告诉我?(它 ..
发布时间:2022-01-12 15:20:07 C/C++开发

CString::Format 的替代方案?

在 VC6 中进行字符串格式化是否有更好的替代方法,在替换之前进行语法检查? 解决方案 CString 为 printf 样式的格式提供了 Format 方法,但是这不是类型安全的. 对于类型安全的字符串格式,您可以使用 std::stringstream/std::wstringstream 或 Boost Format 库,尽管它们都适用于 C++ std::basic_stri ..
发布时间:2022-01-12 15:19:53 C/C++开发

使用后需要删除 CString 以释放内存吗?

如果我使用这样的 CString: void myFunc(char *str){CString s(str);//用 CString 操作其他数据//...//完成的//我应该以某种方式删除's'以避免内存泄漏吗?} 一旦函数超出范围,字符串是否会被删除? 另外,我知道 new 关键字分配内存,如果我构造一个没有 new 关键字的对象,内存仍然分配吗?我的直觉告诉我是的,但我想验证一下 ..
发布时间:2022-01-12 15:19:45 C/C++开发

如何使用 MFC 从文件中加载图像

我的浏览按钮代码是 void CFileOpenDlg::OnBnClickedButton1(){//TODO: 在此处添加您的控件通知处理程序代码CFileDialog dlg(真);int 结果=dlg.DoModal();如果(结果==IDOK){路径=dlg.GetPathName();更新数据(假);}} 这是从资源加载图像的代码,但不适用于从文件加载图像.我知道 LoadImag ..
发布时间:2022-01-12 15:19:31 C/C++开发

Spy++是如何构建它的进程列表的?

TL;DR - Spy++ 工具是如何真正构建其进程列表的? 舞台 我们有一个挂起的 MFC 桌面应用程序(在 Windows XP 上运行),它不再对任何用户输入做出反应.但是,当通过 alt-tab 切换到它时,它会被重绘.(它确实收到 WM_SETFOCUS、WM_ACTIVATE 等.它显然没有收到任何鼠标或键盘消息.) 由于应用程序陷入了困境,我们提取了一些进程转储,但 ..
发布时间:2022-01-12 15:19:24 C/C++开发

想学习 Windows 编程,有什么建议吗?

有人告诉我使用MFC,但似乎MFC会死,虽然它还没有......所以如果我现在想学习windows编程,我应该选择哪一个?谢谢. 解决方案 我鼓励你学习C#,个人认为是当今最好的windows编程语言之一(个人意见) ..
发布时间:2022-01-12 15:19:16 C/C++开发

如何知道某个磁盘的格式(是 FAT32 还是 NTFS)

我在windows、c++、mfc下编程如何通过“c:\"等路径知道磁盘的格式.windows有提供这样的API吗? 解决方案 Win32API 函数 ::GetVolumeInformation 就是你要找的. 来自 MSDN: 获取音量信息函数 BOOL WINAPI GetVolumeInformation(__in_opt LPCTSTR lpRootPathName,_ ..
发布时间:2022-01-12 15:19:09 C/C++开发

如何从头开始启动 MFC 应用程序?

换句话说,来自一个空白的 win32 项目(没有向导). 这就是我所在的地方: 预处理器定义:WIN32 链接器->系统->子系统=控制台 int _tmain(){int nRetCode = 0;//初始化 MFC 并在失败时打印和错误if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0)) ..
发布时间:2022-01-12 15:18:52 C/C++开发

通过 LoadLibrary 调用 DLL 时 MFC 状态无效

我正在使用 MFC 并动态链接 DLL 与 LoadLibrary.当应用程序调用 DLL 时,我似乎无法正确获取 MFC 状态,并且 DLL 在同一个调用中回调.最终,它会导致大量断言. 这是我正在做的代码模型. 应用程序很正常,直接来自向导 MFC 应用程序.我在某处有按钮,这是按钮的处理程序: void 回调(){AFX_MANAGE_STATE(AfxGetStaticMod ..
发布时间:2022-01-12 15:18:44 C/C++开发

工作线程如何与主 UI 线程通信?

工作线程与主 UI 线程通信的最佳方式是什么? 总结:我的 C++/MFC 应用程序是基于对话框的.为了进行冗长的计算,主 UI 线程创建了几个工作线程.当工作线程在计算中进行时,它们会将其进度报告给主 UI 线程,然后主 UI 线程会显示进度. 这适用于共享内存中的数字进度值(由工作人员编写,由 UI 读取),但我在处理文本进度消息时遇到问题.我尝试的解决方案经过了多次迭代,但似乎都 ..
发布时间:2022-01-12 15:18:27 C/C++开发

使用 winapi 或 mfc 从 .NET 应用程序列表控件中获取项目名称

所以基本上我有这个以列表形式输出数据的软件.感谢这里的评论,我们了解到它很可能是用 .NET 编写的. 我想扫描列表,以便对数据执行一些算法. 使用 Spy++,我发现保存此列表的标题为“Panel2",我可以使用 EnumChildWindows 获取此列表的句柄(其类为“WindowsForms10.Window.8.app"). 但是我不知道如何访问列表本身,以便我可以阅读 ..
发布时间:2022-01-12 15:18:07 C/C++开发

警告 C4407 会导致哪些问题?

我通过多重继承在一些 MFC CWnd 派生对象上使用纯虚拟接口得到了一些警告.我相信这是由定义需要为消息映射实现的方法引起的. 警告 C4407:在指向成员表示的不同指针之间强制转换,编译器可能会生成不正确的代码 这听起来不仅仅是一个警告,更像是可能导致堆损坏的东西.那么有没有另一种方法来做类似下面的事情,不会导致 MFC 动态向下转换宏比平时更阻塞? 类 ISomeInterface{上 ..
发布时间:2022-01-12 15:18:00 C/C++开发

MFC C++ 应用程序的最佳 XML 序列化库

我有一个使用 MFC 和 Stingray 库用 C++ 编写的应用程序.该应用程序适用于各种大型数据类型,这些数据类型目前都基于 MFC 文档/视图序列化派生功能进行序列化.我还添加了基于 Stingray 库的 XML 序列化选项,该库通过 Microsoft XML SDK 实现 DOM.虽然易于实现,但性能却很糟糕,以至于除了非常小的文档之外,它无法用于任何其他东西. 对于这种情况, ..
发布时间:2022-01-12 15:17:51 C/C++开发

屏幕截图忽略了一些窗口

我在 MFC 中工作,我正在尝试捕获桌面的 bmp.我正在使用 GetDC(NULL) 来执行此操作,但它似乎忽略了特殊的蒙皮窗口.它似乎忽略了用 UpdateLayeredWindow 绘制的窗口.这种行为似乎只发生在 Vista x64 和 XP 上.我也试过 GetWindowDC 和桌面 HWND 但结果是一样的. 注意事项:1)打印屏幕工作.2) 在 Vista 上,如果我启用 A ..
发布时间:2022-01-12 15:17:34 C/C++开发

如何在 CDockablePane 中放置 MFC CFormView?

如何将 MFC CFormView 放置在 VS 2008 MFC 功能包中引入的 CDockablePane 中? 解决方案 我在 MFC Feature Pack 示例中找不到此类示例. 所有包含 CFormView 的项目都是: 任务窗格选项卡控件选项卡式视图状态栏演示设置窗格大小菜单子集 但是在任何项目中,CFormView 都没有嵌入到 CDockablePan ..
发布时间:2022-01-12 15:17:28 C/C++开发

如何更改 CTabCtrl 选项卡颜色?

你好,新年快乐,(可以说到星期四) 我正在尝试更改 CTabCtrl 类中选项卡的颜色.我正在尝试创建自己的 ReskinCTablCtrl,以便我可以在单独的类中调用它并在整个程序中轻松使用它. 目前我可以更改 CTabCtrl 的背景颜色,但我无法修改选项卡本身. 我使用 ON_WM_ERASEBKGND() 来绘制背景,并且没有问题: BOOL ReskinCTabCtr ..
发布时间:2022-01-12 15:17:20 C/C++开发