简单的说,就是用户在编辑框中输入组合框里已存在的一个选项,
输入完之后,单击确定按钮,可以使组合框立即跳到相应的选项.请问具体代码怎么写?? 我用的是VS2008

解决方案 »

  1.   

    CComboBox box;
    char szEdit[300];
    box.GetWindow(szEdit, 300);
    int nIndex = box.FindStringExact(0, szEdit);
    box.SetCurSel(box);
      

  2.   

    box.SetCurSel(box);
    改成
    box.SetCurSel(nIndex );
      

  3.   

    ==================你看,
    CString str = pListCtrl->GetItemText(nItem, 1);  // str 被初始化为从记录集里获得的一个字符串(与组合框中某一项相对应)
    dlg.m_combobox.GetWindowTextW(str);
    int nIndex= dlg.m_combobox.FindStringExact(0, str); 
    dlg.m_combobox.SetCurSel(nIndex);你看,这样用对不对....
      

  4.   

    CString str = pListCtrl->GetItemText(nItem, 1);  // str 被初始化为从记录集里获得的一个字符串(假如 str得到的是"星期三") 
    dlg.m_combobox.GetWindowTextW(str); 
    int nIndex= dlg.m_combobox.FindStringExact(0, str); 
    dlg.m_combobox.SetCurSel(nIndex); 
      

  5.   

    CString str = pListCtrl->GetItemText(nItem, 1);  // str 被初始化为从记录集里获得的一个字符串(与组合框中某一项相对应) 如果这个是你要与组合框对比的字符串。那么你就没必要用dlg.m_combobox.GetWindowTextW(str); 这句了
    CString str = pListCtrl->GetItemText(nItem, 1);  // str 被初始化为从记录集里获得的一个字符串(与组合框中某一项相对应) 
    // dlg.m_combobox.GetWindowTextW(str); 这句可以不要。原来的目的是取得编辑框上的字符串。现在直接用上面说的str
    int nIndex= dlg.m_combobox.FindStringExact(0, str); 
    dlg.m_combobox.SetCurSel(nIndex); 
      

  6.   

    是不是要先判断一下nIndex是否等于-1
    if(nIndex==-1)
    {
    MessageBox("输入的字符串在组合框中找不到,请重新输入");
    return;
    }
    因为如果nIndex=-1的话,SetCurSel(-1)可能出错