没有使用MFC,在一个空的项目中添加了一个Dialog资源,Dialog上放一个ComboBox,添了几行文字作为下拉列表的内容,然后在代码中调用DialogBox,其他控件都能正常初始化,但这个ComboBox下拉列表是空的。在OnInitDialog函数中加上UpdateWindow函数也没用,用SendMessage给ComboBox控件发送LB_ADDSTRING消息也不响应(但函数返回0)。请问如何在这种不用MFC的情况下使用ComboBox。万分感谢。

解决方案 »

  1.   

    没有使用MFC ???
    -----------
      

  2.   

    是啊,建一个空项目,在wWinMain函数里通过Dialog的ID调用DialogBox(),其他的功能也都是直接用API函数实现,哪里用MFC了。
      

  3.   

    又试了一下,不用资源,直接使用CreateWindow函数创建一个ComboBox,然后用LB_ADDSTRING消息来添加下拉列表内容也可以正常运作。但为什么使用资源就不行呢?
      

  4.   

    ComboBox控件发送LB_ADDSTRING??CB_ADDSTRING;
    或者
    ComboBox_AddString(hwndctl,lpsz);
      

  5.   

    这个可以,十分感谢!不过,如果用MFC的话,在ComboBox属性中Data项中添加的值就能随控件初始化一起显示。为什么在不用就不行呢?而且,如果不用MFC就必须用CB_ADDSTRING来添加下拉内容的话,那么此时MS公司在ComboBox属性中留下的Data那个项又是干什么的?谢谢!
      

  6.   

    这个可以,十分感谢!不过,如果用MFC的话,在ComboBox属性中Data项中添加的值就能随控件初始化一起显示。为什么不用MFC就不行呢?而且,如果不用MFC就必须用CB_ADDSTRING来添加下拉内容的话,那么此时MS公司在ComboBox属性中留下的Data那个项又是干什么的呢?谢谢!
      

  7.   

    MFC,在OnInitDialog的时候,会发LB_ADDSTRING给控件。