从编辑控件读取文本
read text from edit control
我想读取用户在Edit控件中键入的文本。在输入文本并按下按钮后,我想获得文本并将其作为项目添加到组合框中。这就是我在父对话框的WM_COMMAND
中所做的:
case WM_COMMAND:
if(HIWORD(wParam) == BN_CLICKED)
{
if ((HWND)lParam == Button[0])
{
int len = GetWindowTextLengthW(Button[2]) + 1;
GetWindowTextW(Button[2], text, len);
SendMessage(Button[1],(UINT) CB_ADDSTRING,(WPARAM) 0,(LPARAM) text);
}
}
return 0;
但是事情出错了,有时我在"text"变量中得到NULL
,有时只是用户输入的字符串的第一个字符,有时是奇怪的ASCII字符。我做错了什么?有什么想法吗?
您需要为字符串分配内存。下面是在c++ 03中应该如何做的:
std::vector<wchar_t> str(len);
GetWindowTextW(Button[2], &str[0], str.size());
SendMessageW(Button[1], CB_ADDSTRING, 0, reinterpret_cast<LPARAM>(&str[0]));
相关文章:
- C++将文本文件中的数据读取到结构数组中
- 如何在c++中从文本文件中逐行读取整数
- 从文本文件中读取时钟时间和事件时间并进行处理
- 如何从文本文件中读取值和数组
- C++试图读取一个文件并输出到另一个文本文件
- 为什么C++的文件 I/O 在读取文本文件时忽略初始空行?我怎样才能让它不这样做?
- 将从格式化文本文件读取的文本数据存储到链表
- 如何从文本文件中读取数值,直到遇到字符类型?
- 如何将文本文件的特定行读取到 int 类型的数组中C++?
- 为什么 getline() 不读取文本文件中的所有内容?
- 读取字符串文本输入以创建 2D 矢量
- 如何使用iStringstream读取和解析文本文件?
- 逐字读取文本文件中的每一行并转换为 int(无限循环或崩溃?
- 我被困在如何从文本文件中读取
- C++ 从文本文件中读取每两行,并且在矢量中是安全的
- 从二进制文件中抓取文本时,为什么 xdg_vtnr=8 是我的结果
- 如何使用object.get()将文本读取到一个参数比文本大的2D数组中(2D数组有更多的行和列)
- Windows XP在C++中启动时读取文本文件的速度较慢;预取
- 从Windows应用程序的文本框中抓取文本
- C++从非英语文件名和非英语文本读取