为什么小弟我的组合框控件的下拉列表中只显示了一行
为什么我的组合框控件的下拉列表中只显示了一行?
各位大侠:
我用的是MFC中的对话框编程,在OnInitDialog()函数中,想通过
for(int i=0;i<36;i++)
{
SendDlgItemMessageA(hWnd,IDC_COMBO_OUTPUT,CB_ADDSTRING,0,
(LPARAM)"123");
SendDlgItemMessageA(hWnd,IDC_COMBO_OUTPUT,CB_SETITEMDATA,i,
(LPARAM)"123");
}
来给下拉列表中的显示出字符“123”,但是问题出来了,运行后,只有第二行有出现了123,表现为:(空白)
123
各位大侠,问题是不是出在 CB_SETITEMDATA 这个地方,但是源程序例子:
for(int i=0;i<NUM_OUTPUTFORMATS;i++)
{
SendDlgItemMessageA(hWnd,IDC_COMBO_OUTPUT,CB_ADDSTRING,0,
(LPARAM)g_aszOutputFormat[i]);
SendDlgItemMessageA(hWnd,IDC_COMBO_OUTPUT,CB_SETITEMDATA,i,
(LPARAM)g_aOutputFormat[i]);
}
却能把g_aszOutputFormat[i]数组中的内容显示到下拉列表中。求好心指导指导。
------解决方案--------------------
你先去界面看看
你这个Combox是不是太小了,
删了,重拖一个到对话框,注意下拉条 长长长~~~~
各位大侠:
我用的是MFC中的对话框编程,在OnInitDialog()函数中,想通过
for(int i=0;i<36;i++)
{
SendDlgItemMessageA(hWnd,IDC_COMBO_OUTPUT,CB_ADDSTRING,0,
(LPARAM)"123");
SendDlgItemMessageA(hWnd,IDC_COMBO_OUTPUT,CB_SETITEMDATA,i,
(LPARAM)"123");
}
来给下拉列表中的显示出字符“123”,但是问题出来了,运行后,只有第二行有出现了123,表现为:(空白)
123
各位大侠,问题是不是出在 CB_SETITEMDATA 这个地方,但是源程序例子:
for(int i=0;i<NUM_OUTPUTFORMATS;i++)
{
SendDlgItemMessageA(hWnd,IDC_COMBO_OUTPUT,CB_ADDSTRING,0,
(LPARAM)g_aszOutputFormat[i]);
SendDlgItemMessageA(hWnd,IDC_COMBO_OUTPUT,CB_SETITEMDATA,i,
(LPARAM)g_aOutputFormat[i]);
}
却能把g_aszOutputFormat[i]数组中的内容显示到下拉列表中。求好心指导指导。
------解决方案--------------------
你先去界面看看
你这个Combox是不是太小了,
删了,重拖一个到对话框,注意下拉条 长长长~~~~