如何在多字节字符集项目中显示MFC命令按钮控件?

时间:2012-06-08 07:42:51

标签: visual-studio-2010 mfc

在Visual Studio 2010中使用“命令按钮”MFC控件时遇到问题。

创建基于对话框的非Unicode MFC项目时

Capture of the Wizard

将命令按钮控件添加到初始对话框

Added Command Button Controls

当我构建并运行我的项目时,我得到:

My Command Button Controls are invisible

当我点击其中一个按钮应该是复选框的区域时:

So my controls are here and react

现在,我编辑项目属性并切换到Unicode字符集:

Project config window

当我建立并运行时,Bingo。

My dialog is functional

我的问题是:是否可以在多字节字符集中使用

谢谢!

2 个答案:

答案 0 :(得分:1)

Common Control DLL的多字节版本中不支持某些内容。

我已经发现CEdit :: SetCueBanner不适用于多字节构建,但似乎所有"Windows Vista Common Controls" require you to build with the Unicode character set

答案 1 :(得分:0)

所有Windows Common控件和Windows内核本身都在内部实现为UNICODE。为了向后兼容,确实支持MBCS。因此,如果使用像SetWindowTextA()这样的API的ASCII / MBCS版本,它基本上将它从MBCS转换为UNICODE。微软正试图迫使开发人员从MBCS迁移到UNICODE。

要解决您的问题,没有MBCS版本的Command按钮。所以你必须切换到UNICODE字符集。时机已到。