CComboBox的SelectString函式有弊端
CComboBox中字串透過AddString新增後,
比如 天氣1、天氣2、天氣222,天氣234
CComboBox呼叫SelectString(0, _T("天氣2"))函式有弊端。可能會選擇的是 天氣222
應該用for迴圈判斷
m_comBoText.GetWindowText(strText);
if (strText == 你要選擇的內容)
m_comBoText.SetCurSel(i);
才可以避免當內容有字首重複的情況,選擇出錯。
void CDlgXXX::SetComboBo(CBCGPComboBox& combo, CString strSel) { //m_combo_xxx_.SelectString(0, strTxt); 重複字首時,有問題 CString strItem = _T(""); int iCount = combo.GetCount(); for (int i = 0; i < iCount; ++i) { combo.GetLBText(i, strItem); if (strItem == strSel) { combo.SetCurSel(i); break; } } }