【待歸納】關於MFC combobox下拉框 下拉選擇後立即獲取控件值的事件處理

需求:下拉框點擊某個值後自動根據這個值的內容觸發操作

問題:常規的使用onSelectChange事件和m_combo.GetWindowText()並不能獲取到選中時候的值,如果第一次選擇某一項往往獲取的值爲空或者默認值

解決辦法:下拉框選擇後值更新的比較慢,但是索引值是更新了的,所以需要使用combo的GetLBText方法,通過索引值去獲取選中的值

void GetLBText( int nIndex, CString &rString ). 
參數說明:nIndex爲列表框中數據的索引值, rString 爲字符串, 
函數說明:把索引號爲nIndex的數據放到rString變量中. 與其對應的GetLBTextLen(int nIndex)函數就是得到索引號爲nIndex中數據的長度。

void CBasicInfoMaterial::OnSelchangeComboMaterial0()
{
    CString s_linkMaterial;    
    m_combo_material_0.GetLBText(m_combo_material_0.GetCurSel(), s_linkMaterial);
    if(s_linkMaterial=="xx")
    {
        //觸發操作
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章