例如:数据表为 :  姓名      成绩
                   张三      80
                   李四      80
                   王五      81
把成绩的数据80,81显示在下拉列表中,而不是显示80,80,81!  即重复数据只显示一次.
自己刚开始接触,是个新手,希望有详细些的代码,谢谢!

解决方案 »

  1.   


    CString strScore;
    CComboBox cmb;if(cmb.FindString(0,strScore) == CB_ERR)
    {
        cmb.AddString(strScore);
    }
      

  2.   

    新手首先要安装MSDN,你的问题在MSDN的CComboBox的类说明里面写得很清楚了。
      

  3.   

    根据自己的实际情况改下。void CMFCTestDlg::OnBnClickedButton1()
    {
    CDatabase db;
    CRecordset rs(&db);
    db.OpenEx(TEXT("Driver={SQL Server};DataBase=table;Server=192.168.0.190;uid=sa;pwd=password;"), CDatabase::openReadOnly);

    rs.Open(-1, TEXT("select top 10 scardid, sname, mremain from tusers order by mremain desc"));
    CString scardid, name, mremain;
    CString tmp;
    CComboBox* pCb = (CComboBox*)GetDlgItem(IDC_COMBO1);   while(!rs.IsEOF())
    {
    rs.GetFieldValue(TEXT("scardid"), scardid);
    rs.GetFieldValue(TEXT("sname"), name);
    rs.GetFieldValue(TEXT("mremain"), mremain);
    tmp.Format(TEXT("%s  %s %s"), name, scardid, mremain);
    pCb->InsertString(-1, tmp);
    rs.MoveNext();
    }
    rs.Close();
    db.Close();
    // TODO: 在此添加控件通知处理程序代码
    }