win32 GUI在窗口中显示char数组变量中的文本

用户名

我希望使用win32将字符数组中的字符显示到窗口上。第二种参数类型错误。我该如何解决?谢谢

char data[5]="hello";

CreateWindow(TEXT("STATIC"), TEXT(data), WS_VISIBLE | WS_CHILD | 
                WS_BORDER|ES_AUTOVSCROLL,
                 10, 50,300,300,hWnd, (HMENU) none, NULL, NULL);
亚历克斯·F
const TCHAR* data = TEXT("hello");    // LPCTSTR 

CreateWindow(TEXT("STATIC"), data, WS_VISIBLE | WS_CHILD | 
            WS_BORDER|ES_AUTOVSCROLL,
             10, 50,300,300,hWnd, (HMENU) none, NULL, NULL);

您的代码未以Unicode配置进行编译。使用通用的TCHAR类型应该可以解决问题。

char*使用ATL转换宏(http://msdn.microsoft.com/zh-cn/library/87zae4a3.aspx)的另一种方式(如果数据为):

#include <atlstr.h>

const char* data = "hello";

CreateWindow(TEXT("STATIC"), CA2T(data), WS_VISIBLE | WS_CHILD | 
            WS_BORDER|ES_AUTOVSCROLL,
             10, 50,300,300,hWnd, (HMENU) none, NULL, NULL);

最后,为了完整起见,您可以显式调用ANSI API版本:

const char* data = "hello";

CreateWindowA("STATIC", data, WS_VISIBLE | WS_CHILD | 
            WS_BORDER|ES_AUTOVSCROLL,
             10, 50,300,300,hWnd, (HMENU) none, NULL, NULL);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

Related 相关文章

热门标签

归档