无法在 MFC Visual .NET 2008 中初始化滑块控件变量

Posted

技术标签:

【中文标题】无法在 MFC Visual .NET 2008 中初始化滑块控件变量【英文标题】:Unable to Initialize Slider Control Variable in MFC Visual .NET 2008 【发布时间】:2014-10-24 19:10:17 【问题描述】:

我在 MFC Visual .NET 2008 中创建了一个普通的 Vertical Slider 变量。当我尝试通过以下代码行初始化我称之为“m_VSliderBar”的 Slider 控件变量时

m_VSliderBar.SetRange(0, 100, TRUE);
m_VSliderBar.SetPos(0);
m_VSliderEcho.Format("%d", 0);

则输出如下错误:

error C2664: 'void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)' : cannot convert parameter 1 from 'const char [3]' to 'const wchar_t *'

我不明白这个错误。有人可以帮我正确编译代码吗?

【问题讨论】:

实现问题属于 ***。程序员是针对概念性问题的。 【参考方案1】:

你显然有一个 Unicode 版本。试试这个:

m_VSliderEcho.Format(_T("%d"), 0);

错误消息告诉您 Format 函数需要 wchar_t 参数(即 16 位字符,表示 Unicode)并且您提供了 ANSI 字符串。 _T() 宏会根据您的项目属性将正确的修饰符添加到文字字符串中。

所以对于 Unicode 构建,这将转换为 ;

m_VSliderEcho.Format(L"%d", 0);

【讨论】:

以上是关于无法在 MFC Visual .NET 2008 中初始化滑块控件变量的主要内容,如果未能解决你的问题,请参考以下文章

我可以使用 Visual Studio 2008 编译旧版 MFC 应用程序吗?

Visual Studio 2008中MFC程序cstring转成char??急!!!大家帮下啊

Visual Studio 2008. MFC 事件向导损坏

使用 Visual Studio 2008 编译和运行 MFC 应用程序?

Visual Studio 2008 未加载 MFC dll 符号

使用 MFC 在 MS Visual C++ 2008 中处理 .bmp 图像时出现颜色问题