C++动态创建的MFC视觉工作室填充组合框
C++ MFC visual studio fill combobox created dynamically
我尝试使用以下代码填充我动态创建的组合框:
hw = ::CreateWindowEx(0, _T("COMBOBOX")
, NULL, WS_CHILD | WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWN
,gx, gy, w,h
, this->m_hWnd, (HMENU)id, AfxGetApp()->m_hInstance, NULL
);
LRESULT msg ;
msg=::SendMessage(hw,CB_ADDSTRING,i,(LPARAM)"test");
if (msg = CB_ERRSPACE)
{
MessageBox(NULL,((LPCTSTR)""),0);
}
我总是在味精中得到一个 NULL 值,没有添加任何项目。请问怎么了??多谢!
尝试
SendMessage(hw, CB_INSERTSTRING, -1, (LPARAM)"test");
您需要注意,项目有 Unicode 和 MBCS 设置。我假设您的项目具有 Unicode 设置。
因此,当您起诉字符常量并希望在 WinAPI 函数中使用它们时,需要使用 _T 或 TEXT。
msg=::SendMessage(hw,CB_ADDSTRING,i,(LPARAM)TEXT("test"));
if (msg = CB_ERRSPACE)
MessageBox(NULL,TEXT(""),0);
结果 msg==0 是正常的。您向组合框中添加了一个项目。但由于编码错误可能看不到要设置的文本。
相关文章:
- 在c++中用vector填充一个简单的动态数组
- 如何使用用户输入在C++中正确填充2D数组
- 如何找到大小'x'数组是否完全填充,在C++?
- Cuda C++:设备上的Malloc类,并用来自主机的数据填充它
- 通过for循环使用用户输入填充列表
- 根据用户输入用字母填充矢量,并将"开始"和"结束"放在四肢
- 视觉工作室项目.提取源文件夹名称
- 如何正确填充在堆上分配的二维数组?
- 将数字转换为填充字符串
- 有没有办法在一行中填充矢量图
- 用C++中的数字和条件填充向量
- 用真值填充矢量
- 使用结构成员指针在C++中填充结构
- 流填充字符的默认定位
- 使用不同算法的 PKCS1v15 填充进行加密 ++ 签名
- 为什么我在尝试模板时遇到视觉工作室C++错误
- C++:使用缓冲区中的数据填充结构
- 如何将零填充的多维数组传递给 C++ 中的函数?
- Cryptopp:获取密码输入的填充字符串
- C++动态创建的MFC视觉工作室填充组合框