我在 Visual Studio 2010 中使用“命令按钮”MFC 控件时遇到问题。
创建基于对话框的非 Unicode MFC 项目时
并且在将命令按钮控件添加到初始对话框时
当我构建并运行我的项目时,我得到:
当我单击其中一个按钮应该是复选框的区域时:
现在,我编辑项目属性并切换到 Unicode 字符集:
当我构建并运行时,宾果游戏。
我的问题是:有没有办法可以在多字节字符集中工作?
谢谢!
我在 Visual Studio 2010 中使用“命令按钮”MFC 控件时遇到问题。
创建基于对话框的非 Unicode MFC 项目时
并且在将命令按钮控件添加到初始对话框时
当我构建并运行我的项目时,我得到:
当我单击其中一个按钮应该是复选框的区域时:
现在,我编辑项目属性并切换到 Unicode 字符集:
当我构建并运行时,宾果游戏。
我的问题是:有没有办法可以在多字节字符集中工作?
谢谢!
Common Control DLL 的多字节版本不支持某些内容。
我已经发现 CEdit::SetCueBanner 不适用于多字节构建,但似乎所有“Windows Vista 通用控件”都要求您使用 Unicode 字符集进行构建。
所有 Windows 通用控件和 Windows 内核本身都在内部作为 UNICODE 实现。确实存在对 MBCS 的支持以实现向后兼容性。因此,如果您使用 ASCII/MBCS 版本的 API(如SetWindowTextA()
. 微软正试图迫使开发人员从 MBCS 迁移到 UNICODE。
为了解决您的问题,没有 MBCS 版本的命令按钮。所以你必须切换到 UNICODE 字符集。时机已到。