首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

VC++ 6.0 MFC ComboBox 點選項目回應訊息:GetCurSel 取得索引與 GetLBText 取得文字

     編輯:程式設計綜合問答

事件選擇

在類別向導為 ComboBox 控制項(IDC_COMBO1)新增 CBN_SELCHANGE 通知訊息處理函數 OnCbnSelchangeCombo1()。

取得選中項目文字

void CMyDialog::OnCbnSelchangeCombo1()
{
    CComboBox* pCombo = (CComboBox*)GetDlgItem(IDC_COMBO1);
    int nSel = pCombo->GetCurSel();
    if (nSel != CB_ERR) {
        CString strText;
        pCombo->GetLBText(nSel, strText);
        AfxMessageBox(_T("您點選了:") + strText);
        // 或根據文字執行對應邏輯
        if (strText == _T("a")) { /* ... */ }
    }
}

動態新增項目(按鈕處理)

void CMyDialog::OnBnClickedBtnAdd()
{
    UpdateData(TRUE); // 將編輯框資料同步到成員變數
    CComboBox* pCombo = (CComboBox*)GetDlgItem(IDC_COMBO1);
    pCombo->AddString(m_strEdit1); // m_strEdit1 為編輯框 DDX 變數
    pCombo->AddString(m_strEdit2);
    pCombo->AddString(m_strEdit3);
    pCombo->AddString(m_strEdit4);
    UpdateData(FALSE);
}

關鍵 API 速查

函數用途
GetCurSel()取得目前選中索引(0 基底),無選擇傳回 CB_ERR
GetLBText(index, CString&)取得指定索引的項目文字
AddString(LPCTSTR)在下拉清單末尾新增項目
InsertString(index, LPCTSTR)在指定位置插入
DeleteString(index)刪除指定項目
ResetContent()清空所有項目

總結

MFC ComboBox 點選項目回應:處理 CBN_SELCHANGE,用 GetCurSel 取索引,GetLBText 取文字,再依業務邏輯分派。動態新增用 AddString。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved