我在vs2008下,用MFC 写了个程序,需要用到combobox控件,有一串数据,我选择了dropdown类型,但是每次程序运行时该控件处都是空白的,没有默认值设定,我找了一下,也没找到,有谁知道的吗?

解决方案 »

  1.   

    主要是不知道在什么地方加?对话框代码如下:
    //////////////comSet.h
    #pragma once
    #include "afxwin.h"
    // comSet dialogclass comSet : public CDialog
    {
    DECLARE_DYNAMIC(comSet)public:
    comSet(CWnd* pParent = NULL);   // standard constructor
    virtual ~comSet();// Dialog Data
    enum { IDD = IDD_COMSET_DIALOG };protected:
    virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support DECLARE_MESSAGE_MAP()
    public:
    afx_msg void OnBnClickedOk();
    CComboBox comNum_Box;
    CComboBox baudRate_Box;
    CComboBox checkMethod_Box;
    };
    ////////////////////comSet.cpp
    // comSet.cpp : implementation file
    //#include "stdafx.h"
    #include "flyDove.h"
    #include "comSet.h"
    #include "flyDoveDlg.h"
    // comSet dialogIMPLEMENT_DYNAMIC(comSet, CDialog)comSet::comSet(CWnd* pParent /*=NULL*/)
    : CDialog(comSet::IDD, pParent)
    {}comSet::~comSet()
    {
    }void comSet::DoDataExchange(CDataExchange* pDX)
    {
    CDialog::DoDataExchange(pDX);
    DDX_Control(pDX, IDC_COMBO1, comNum_Box);
    DDX_Control(pDX, IDC_COMBO2, baudRate_Box);
    DDX_Control(pDX, IDC_COMBO3, checkMethod_Box);
    }
    BEGIN_MESSAGE_MAP(comSet, CDialog)
    ON_BN_CLICKED(IDOK, &comSet::OnBnClickedOk)
    END_MESSAGE_MAP()
    // comSet message handlersvoid comSet::OnBnClickedOk()
    {
    // TODO: Add your control notification handler code here
    //OnOK();}
      

  2.   

    好像有一个函数叫setSel,我记不清了
      

  3.   

        
    将要设为默认值的项放到第一位如下
    m_default.AddString(_T("默认项"));
    m_card_type.SetCurSel(m_card_type.GetCount()-1); 
    或者默认项后跟SetCurSel(0);