去掉UpdateData(false);
OnInitDialog本来就是要做DODATAEXCHANGE的

解决方案 »

  1.   

    你要把m_url的窗口区域设大才能看到,...具体的,你要把它的高设成
    m_url.getcount()*m_url.Getitemheight()
    或者更大吧!!绝对正确.:)
      

  2.   

    UpdataData()函数由框架自动调用了2次,第一次是在调用OnInitDialog()函数之前。第二次使用框架自动调用在OnOk()虚函数中。
      

  3.   


    DoDataExchange是怎么写的???
      

  4.   

    按住combobox右边的弹出键,出现上下方向的鼠标,往下拉,尽量拉大些,我就不相信出不来。
      

  5.   

    和DoDataExchange函数有关系吗?
      

  6.   

    你是不是把属性设为ownerdraw了??
      

  7.   

    不会吧,去掉updatedata(false)之后绝对可以,不行就是你的属性设错了
      

  8.   

    在控件上点右键,选properties,在那里面找
      

  9.   

    哈哈,你们都没说到点子上来!
    真正的原因是combox下拉框不够大的缘故.
    用下述代码:
    CRect rc;
    m_url.GetWindowRect(rc);
    ScreenToClient(rc);
    m_url.MoveWindow(rc.left,rc.top,rc.Width(),100);
    //再往里加东东就可以下拉显示了!
      

  10.   

    ownerdraw设置为NO,不行
    ownerdraw设置为fixed,不行
    ownerdraw设置为variable,不行
      

  11.   

    gameboy999(我上班了!) 或许有点道理。
      

  12.   

    谢谢jazzrabbit(爵士兔),但为什么每加一次都要加入这段代码呢??????????????
    CRect rc;
    m_url.GetWindowRect(rc);
    ScreenToClient(rc);
    m_url.MoveWindow(rc.left,rc.top,rc.Width(),100);
      

  13.   

    大哥,不对哟,我认为这种方法是对的,试了一下果然显出来了。我的方法是先拖了一个CComboBox控件。然后用Classwizard给CComboBox控件添了一个CComboBox变量m_url.
    其后的方法和你的一样。
      

  14.   

    大哥,不对哟,我认为这种方法是对的,试了一下果然显出来了。我的方法是先拖了一个CComboBox控件。然后用Classwizard给CComboBox控件添了一个CComboBox变量m_url.
    其后的方法和你的一样。
      

  15.   

    只要在OnInitDialog中改一次大小就行了。不必要每次都写这个代码.因为开始时你的combox是空的,系统给combox的下拉框的空间为0.你当然不能看到下拉的列表啦
    给分吧!
      

  16.   

    你可以在调试时看一下GetWindowRect返回的rc大小就明白了