用法小结
Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文
本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同
时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox
Class 来操作字符串列表。
1、定义控件对应变量
假定已经创建了一个 Dialog,并且从控件工具箱将 Combo Box 控件拖放到上面。打开
Class Wizard,添加控件对应变量,如:CComboBox m_cbExamble;
在后面的代码中会不断使用这个变量。
2、向控件添加 Items
1) 在 Combo Box 控件属性的 Data 标签里面添加,一行表示 Combo Box 下拉列表中的一
行。换行用 ctrl+回车。
2) 利用函数 AddString() 向 Combo Box 控件添加 Items,如:
[cpp]view plaincopy
1. m_cbExample.AddString(“StringData1”);
2. m_cbExample.AddString(“StringData2”);
3. m_cbExample.AddString(“StringData3”);
3) 也可以调用函数 InsertString() 将 Item 插入指定位置 nIndex,如:
m_cbExample.InsertString( nIndex, “StringData” );
3、从控件得到选定的 Item
假设在控件列表中已经选定某项,现在要得到被选定项的内容,首先要得到该项的位置,
然后得到对应位置的内容。这里会用到两个函数,如:
[cpp]view plaincopy
1. intnIndex=m_cbExample.GetCurSel();
2. CStringstrCBText;
3. m_cbExample.GetLBText(nIndex,strCBText);
这样,得到的内容就保存在 strCBText 中。
若要选取当前内容,可调用函数 GetWindowText(strCBText)。
4、在控件中查找给定 Item
这种操作一般用于在程序中动态修改控件中该项的值,可以用函数 FindStringExact() 精确
匹配,如: