代码如下: case WM_INITDIALOG:
        hwndcombo = GetDlgItem (hdlg, IDC_COMBO1);
    m_a.m_hWnd=hwndcombo;
             m_a.AddString("txt123");
             m_a.SetCurSel(0);
      break;
……
 case IDOK:    
    m_a.GetLBText(0,test);
    MessageBox(NULL, test, test, 0);
    return TRUE;为什么程序运行后,所添加的文字没有显示出来,但用代码取列表框的文字却能获得其值。

解决方案 »

  1.   

    m_a没关联上combobox你简单的想m_hWnd=hwndcombo;是不行的
      

  2.   

    如果你的窗口句柄没有问题的话,
    SendMessage(hwndcombo, CB_ADDSTRING, 0, (LPARAM)(LPCTSTR)_T("text123"));
      

  3.   

    m_a.m_hWnd=hwndcombo;
    ------------------------
    m_a是什么CComboBox类型的对象?
    那你应该调用m_a.Attach(hwndcombo);
      

  4.   

    m_a是CComboBox类型的对象,调用了m_a.Attach(hwndcombo);还是不显示文字,真是奇怪了!是不是文字的颜色是白色的?
      

  5.   

    恩,找到原因了,就是xianglitian说的,在设定选项时,选择了“所有者绘制”的“固定”选项导致的。
    谢谢大家的帮助!