加到dialog上的combobox,资源编辑时在data内添加了item,如何在程序运行时使用它?如果用mfc这是自动完成的

解决方案 »

  1.   

    使用GB_XXXXX向其发消息,使用GBN_xxxx接受其的NOTFITY消息.
      

  2.   

    to  Zark(金陵五月) 
    请说得具体些
      

  3.   

    啊,居然有人名字跟我差不多。我的名字也叫yjf刚好我也写过用API控制combobox的程序,可惜刚刚删除了。你要得话,请发email给我。 [email protected]
      

  4.   

    SendDlgItemMessage( hDlg, IDC_COMBOBOX, CB_ADDSTRING, 0,(LPARAM)"string" );
    SendDlgItemMessage( hDlg, IDC_COMBOBOX, CB_SETCURSEL, 0, 0 );
    ...
      

  5.   

    for (int nItem = 0; nItem < pBox->GetCount(); nItem++) {
      char szBuffer[100] = {0};
      pBox->GetLBText(nItem, szBuffer);
    }Good Luck
      

  6.   

    在WINMAIN函数里加入消息发送函数SendMessage(
    GetDlgItem(hwnd,IDC_COMBO1),//COMBO的句柄
    CB_ADDSTRING,//填加字符的消息
    0,
    LPARAM(你想填加的内容)); 响应鼠标点击case IDC_COMBO1:    if(HIWORD(wParam)==LBN_SELCHANGE)。    变量=SendMessage((HWND)lParam,CB_GETCURSEL,0,0);    return 0; 
      

  7.   

    使用mfc建一个基于dialog的project,编辑资源,加上一combobox,在combobox的data里添加items,运行程序,先前data里的items是不是自动加到combobox里了?
      

  8.   

    对啊,先加到资源里的在运行时当然就会显示在combobox中
      

  9.   

    响应WM_INITDIALOG消息添加,从资源填加是MFC的扩展功能。可以看看MFC这方面的代码:
    操纵ComboBox的话,在WINDOWSX.H下有一些宏可以使用,都是通过发消息操纵的:
    ComboBox_Enable(hwndCtl, fEnable)
    ComboBox_GetText(hwndCtl, lpch, cchMax)
    ComboBox_GetTextLength(hwndCtl)
    ComboBox_SetText(hwndCtl, lpsz)
    ComboBox_LimitText(hwndCtl, cchLimit)
    ComboBox_GetEditSel(hwndCtl)
    ComboBox_SetEditSel(hwndCtl, ichStart, ichEnd)
    ComboBox_GetCount(hwndCtl)
    ComboBox_ResetContent(hwndCtl)
    ComboBox_AddString(hwndCtl, lpsz)
    ComboBox_InsertString(hwndCtl, index, lpsz)
    ComboBox_AddItemData(hwndCtl, data)
    ComboBox_InsertItemData(hwndCtl, index, data)
    ComboBox_DeleteString(hwndCtl, index)
    ComboBox_GetLBTextLen(hwndCtl, index)
    ComboBox_GetLBText(hwndCtl, index, lpszBuffer)
    ComboBox_GetItemData(hwndCtl, index)
    ComboBox_SetItemData(hwndCtl, index, data)
    ComboBox_FindString(hwndCtl, indexStart, lpszFind)
    ComboBox_FindItemData(hwndCtl, indexStart, data)
    ComboBox_GetCurSel(hwndCtl)
    ComboBox_SetCurSel(hwndCtl, index)
    ComboBox_SelectString(hwndCtl, indexStart, lpszSelect)
    ComboBox_SelectItemData(hwndCtl, indexStart, data)
    ComboBox_Dir(hwndCtl, attrs, lpszFileSpec)
    ComboBox_ShowDropdown(hwndCtl, fShow)
    ComboBox_FindStringExact(hwndCtl, indexStart, lpszFind)
    ComboBox_GetDroppedState(hwndCtl)
    ComboBox_GetDroppedControlRect(hwndCtl, lprc)
    ComboBox_GetItemHeight(hwndCtl)
    ComboBox_SetItemHeight(hwndCtl, cyItem)
    ComboBox_GetExtendedUI(hwndCtl)
    ComboBox_SetExtendedUI(hwndCtl, flags)
      

  10.   

    在dlg构造函数中给ComboBox控件的变量复一个初值就可以了。