procedure TF_Step_1.BitBtn6Click(Sender: TObject);
var
  ExpClass:TDBGridEhExportClass;
  Ext:String;
begin
  SaveDialog1.FileName:='DataFile';
  if(ActiveControl is TDBGridEh) then
    if SaveDialog1.Execute then begin
      Case SaveDialog1.FilterIndex of
        1: begin ExpClass:=TDBGridEhExportAsText; Ext:='txt';end;
        2: begin ExpClass:=TDBGridEhExportAsCSV; Ext := 'csv'; end;
  3: begin ExpClass:=TDBGridEhExportAsHTML; Ext := 'htm'; end;
  4: begin ExpClass:=TDBGridEhExportAsRTF; Ext := 'rtf'; end;
  5: begin ExpClass:=TDBGridEhExportAsXLS; Ext := 'xls'; end;
        else
           begin ExpClass:=nil;Ext:='';end;
      end;
      if ExpClass<>nil then begin
        if UpperCase(Copy(SaveDialog1.FileName,Length(SaveDialog1.FileName)-2,3)) <>  UpperCase(Ext) then
    SaveDialog1.FileName:=SaveDialog1.FileName+'.'+Ext;
  SaveDBGridEhToExportFile(ExpClass,DBGridEh1,SaveDialog1.FileName,False);
      end;
    end;
end;
上面是在网上找的 照着做 但是 不能实现到处 
大家帮我指点指点  做导出需要做些什么事情和要注意什么
谢谢

解决方案 »

  1.   

    var ExpClass:TDBGridEhExportclass;
      Ext:String;
      savedlg:tsavedialog;
    begin
      savedlg:=tsavedialog.Create(nil);
      savedlg.Filter:= 'Excel文档 (*.xls) |*.XLS |Text files (*.txt) |*.TXT |Comma separated values (*.csv) |*.CSV |HTML file (*.htm) |*.HTM |Rich Text Format (*.rtf) |*.RTF ';
      SaveDlg.FileName:='filename';
      SaveDlg.DefaultExt:='XLS ';
      if SaveDlg.Execute then
        begin
          case SaveDlg.FilterIndex of 
            1: begin ExpClass:=TDBGridEhExportAsXLS; Ext:='xls '; end; 
            2: begin ExpClass:=TDBGridEhExportAsText; Ext:='txt '; end; 
            3: begin ExpClass:=TDBGridEhExportAsCSV; Ext:='csv '; end; 
            4: begin ExpClass:=TDBGridEhExportAsHTML; Ext:='htm '; end; 
            5: begin ExpClass:=TDBGridEhExportAsRTF; Ext:='rtf '; end; 
          else 
            ExpClass:=nil; Ext:=' '; 
          end; 
          if ExpClass <> nil then   begin 
            if UpperCase(Copy(SaveDlg.FileName,Length(SaveDlg.FileName)-2,3)) <> UpperCase(Ext) then 
              SaveDlg.FileName:=SaveDlg.FileName + '. ' + Ext; 
            SaveDBGridEhToExportFile(ExpClass,DBGridEh1,SaveDlg.FileName,true); 
        end; 
      end; 
      Savedlg.Destroy; 
    end;刚刚找到 这个是正解。
      

  2.   

    先要在uses中加上   DBGridEhImpExp