void CDlg::InitDataGrid1(CDatagrid1& Grd,_RecordsetPtr& rs) { CColumns GrdClms; CString strCap,strRec; CString s; long num,numRec; short i; float wdth; strCap.LoadString(IDS_STRING9013); numRec = 0; GrdClms.AttachDispatch(Grd.get_Columns()); if(rs->State==adStateOpen){ num = rs->GetadoFields()->GetCount(); numRec = rs->GetRecordCount(); strRec.Format(_T(" %i"),numRec); strCap +=strRec; Grd.put_Caption(strCap); for (i=0;i<num;i++) { switch(i) { case 0: GrdClms.GetItem((COleVariant) i).SetVisible(FALSE); break; case 1: wdth = 70; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 2: wdth = 270; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 3: wdth = 75; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 4: wdth = 80; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 6: wdth = 50; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 7: wdth = 30; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 8: wdth = 30; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 12: wdth = 30; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 13: wdth = 30; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 14: wdth = 40; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; case 16: wdth = 40; GrdClms.GetItem((COleVariant) i).SetWidth(wdth); break; default: GrdClms.GetItem((COleVariant) i).SetVisible(FALSE); break; } } } else{ strRec.Format(_T(" %i"),numRec); strCap +=strRec; Grd.put_Caption(strCap); } }