我不能使用 DrawText()
I can't use DrawText()
我正在尝试用GDI在c++上绘制一些文本
碰巧我有一个类它有一个返回状态的方法我想绘制它
状态是一个std::字符串!
这是目前为止的内容:
RECT status = RECT();
status.left = rcClient.right-200;
status.left = rcClient.left;
status.top = rcClient.top;
status.bottom = rcClient.bottom;
DrawTextW(hdc, game->GetStatus().c_str(), 1, status, 0);
我有以下错误:
<>之前"FormatMessageW":无法将参数5从"LPWSTR"转换为"char *"687 damas"FormatMessageW":无法将参数5从"wchar_t *"转换为"char *"DrawTextW:无法将参数2从"const char *"转换为"LPCWSTR"之前我找不到解决这个问题的方法。有人能帮我一下吗?A std::string
使用字符,但DrawTextW
期望宽字符(WCHAR
s,与wchar_t
s相同)。
可以用字符串显式地调用DrawTextA
。它将使用宽字符复制字符串并将其传递给DrawTextW
。
DrawTextA(hdc, game->GetStatus().c_str(), 1, &status, 0);
(还要注意,它接受一个指向RECT
的指针,因此您也需要&
)
相关文章:
- C++我的数学有什么问题,为什么我的代码不能正确循环
- 为什么在没有显式默认构造函数的情况下,将另一个结构封装在联合中作为成员的结构不能编译
- 为什么我的for循环不能正确获取argv
- 不能在初始值设定项列表中将非常量表达式从类型 'int' 缩小到'unsigned long long'
- 为什么我不能在 FOR LOOP 中使用 i/10,C++?
- 为什么我不能在不创建字符串变量的情况下使用函数的字符串输出
- 为什么模板类中的对象不能返回值
- 为什么我不能在一个类的不同行中声明和定义成员变量?
- 为什么我不能在 C++ 中的特定函数重载中调用同一函数的任何其他重载?
- ld:bind_at_load和-bitcode_bundle(Xcode设置ENABLE_bitcode=YES)不能
- 数组长度,为什么从命令行获取时不能使用它?
- Windows/Cygwin - 不能使用 pybind11 - 犯错误
- 为什么我不能使用 EGL 创建无头 OpenGl 上下文?
- 递归模板化函数不能分配给具有常量限定类型"const tt &"的变量"state"
- 为什么我不能将一个对象push_back到属于另一个类的对象向量中?
- 为什么我不能将 rand() 与数组的大小一起使用?
- 为什么虚函数不能是静态的和全局的?
- 为什么我不能在 while 循环中创建线程?
- 为什么这个音频包络不能通过开关的情况?
- 我不能使用 DrawText()