无法在 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 应用程序?