ComboBox组合框的基本使用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Microsoft Visual C++ 6.0中ComboBox组合框的基本使用
更多详情可以参考msdn的标准规范:[1]
1 向组合框控件添加内容ComboBox_AddString(hwndCtl,lpsz)
hwndCtl为此组合框的句柄,lpsz为需要添加的字符串,组合框不能直接通过id 添加内容,所以需要得到这个控件的句柄,还得使用GetDlgItem()函数.
举例:
HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1);
//建立一个组合框,ID可以设置为IDC_C1,然后通过GetDlgItem获取这个组合框的句柄
//如果无法正常显示,需要调整此组合框的最大显示范围,在向下箭头上出现上下箭头时可以调整.
ComboBox_AddString(hwndCombo1,TEXT("内容1"));
ComboBox_AddString(hwndCombo1,TEXT("内容2"));
//使用IDC_C1的句柄hwndCombo1,然后添加内容,多次调用可以设置多项文字, //添加的内容通常都放在Main_OnInitDialog()初始化函数中,也可以通过按钮或其他控件调用.
2 获取组合框控件的项目个数ComboBox_GetCount(hwndCtl)
这个函数的返回值为int,参数hwndCtl为此组合框控件句柄;
举例:
HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1);
int count = ComboBox_GetCount(hwndCombo1);
//通过定义count拿到返回值.
3 删除给定索引号的组合框控件的内容ComboBox_DeleteString(hwndCtl, index)
hwndCtl为句柄,index为项目索引号,从上至下,从0开始排列,所以0就是删除第一项.
举例:
HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1);
ComboBox_DeleteString(hwndCombo1,0);
4 获取当前选中项的索引号ComboBox_GetCurSel(hwndCtl)
此函数的返回值为int,返回项目索引号.
举例:
HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1);
int count = ComboBox_GetCurSel(hwndCombo1);
//获取到索引号.
TCHAR str1[256];
sprintf(str1,"当前选中的项索引号为:%d",count);
//使用sprintf储存说明文字跟索引号,
MessageBox(hwnd,str1,TEXT("标题"),MB_OK);
ComboBox_DeleteString(hwndCombo1,count);
//删除获取此索引号的项.
MessageBox(hwnd,TEXT("删除当前选中的项"),TEXT("标题"),MB_OK);
//为选中并删除当前项,如果没有选中任何项,返回值为-1.
5 给定索引号,选中并显示此索引号的值,ComboBox_SetCurSel(hwndCtl, index)
举例:
HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1);
ComboBox_SetCurSel(hwndCombo1,2);
//选择并显示第3项
6 给定索引号,显示该索引号的值.ComboBox_GetLBText(hwndCtl, index, lpszBuffer)
hwndCtl句柄,index索引号,lpszBuffer储存字符串
举例:
HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1);
CString str;
ComboBox_GetLBText(hwndCombo1,2, str);
//ComboBox_GetLBText不返回值,实际是通过str储存并传递字符串. MessageBox(hwnd,str,TEXT("标题"),MB_OK);
//输出某项的str字符串的值.