CComboBox 使用总结


1  定义

	CComboBox m_FontList;

2 添加一个元素(默认添加在末尾)


CString  temp;
temp=_T("elem");
m_FontList.AddString(str)


CString str;
for (int i=0;i < 20;i++)
{
   str.Format(_T("item string %d"), i);
   pmyComboBox->AddString( str );
}

 


首先 使 SORT属性值为FALSE 。。。。。。这个列表框中的数据次序才为代码中添加的次序

另外 使NO Integral Height 属性设为TRUE。。。。。这样下拉列表框的高度才为初始设置的高度,否则则是有多少项便显示多少项的高度

3 在指定位置添加元素


	m_FontList.InsertString(0,L"默认"); //在起始位置添加

	m_FontList.InsertString(-1,L"默认"); //在末尾位置添加


4 删除指定元素

   

   删除次序, 为从后往前进行删除。

   因为,删除某个元素后, 此元素之后的位置发生变化,

   若从前往后删除, 则后面元素位置发生了变化,不能使用原来的位置

   而从后往前删除时, 因当前元素之前的位置不改变, 所以 使用的仍是原来的位置

 

extern CComboBox* pmyComboBox;

// Delete every item from the combo box.
for (int i = pmyComboBox->GetCount()-1; i >= 0; i--)
{
   pmyComboBox->DeleteString( i );
}

删除所有的元素

void ResetContent( );

5 获得指定位置的元素

	CString str;
	m_ComboBox.GetLBText(nIndex,str);


 

6 获得当前位置的元素

 

	//获得当前位置索引
	int nIndex=m_ComboBox.GetCurSel();

	//获得当前位置元素
	CString str;
	m_ComboBox.GetLBText(nIndex,str);

 

7 设置列表框当前显示的元素


int nCount = pmyComboBox->GetCount();
if (nCount > 0)
   pmyComboBox->SetCurSel(nCount-1);

8 寻找指定字符串,并将其设置为当前显示元素 


 

CString str=L"搜索";
int nIndex=-1;
//nIndex为-1 表示:从组合框的开始 搜索所有项
nIndex=m_ComboBox.FindStringExact(nIndex, str);

if (nIndex==CB_ERR)
	m_ComboBox.AddString(str);
else
	m_ComboBox.SetCurSel(nIndex);










你可能感兴趣的:(String,delete,IM)