cxGrid時間格式與匯出Excel

findumars發表於2013-07-15

引用cxFormats單元:
ShortDateFormat := 'dd/mm/yyyy';
DateSeparator := '/';
cxFormatController.UseDelphiDateTimeFormats := True;

 

在cxGridStrs.pas檔案裡:
scxGridNoDataInfoText = '<No data to display>';
scxGridGroupByBoxCaption = 'Drag a column header here to group by that column';
改成:
scxGridGroupByBoxCaption = '拖動資料列到這裡分組';

關於CxDateEdit 下拉“星星星”問題的解決方法(實測有效):
設定TcxDateEdit的字符集:Style->Font->Charset 選擇DEFAULT_CHARSET 即可解決此問題
方法1、把cxCalendar單元的第2024行隱掉即可
方法2、把FONT和CHARST屬性改為DEFAULT

舊版本匯出到Excel:
uses cxExportGrid4Link;
SaveDialog1.InitialDir:='c:\';
SaveDialog1.FileName:='續訂信'+FormatDateTime('yyyy-mm-dd',Now);
SaveDialog1.DefaultExt:='xls';
SaveDialog1.Filter:= 'Fichier de donnees (*.xls)|*.xls';

if SaveDialog1.Execute then
begin
ExportGrid4ToExcel(SaveDialog1.FileName,cxGrid1,True,True);
end;
end;

新版本匯出到Excel:
從原來使用cxGrid4系列開始,都是使用ExportGrid4ToExcel的辦法,可是使用了6系列後,發現這個辦法已經不行了,從Dev官方找了解決辦法。
use
cxGridExportLink;

procedure TMainForm.cxButton_MemoExcelClick(Sender: TObject);
begin
if SaveDialog1.Execute then
begin
ExportGridToExcel(SaveDialog1.FileName,cxGrid1,True,True,True);
end;

end;

///////////注意:ExportGridToExcel匯出的標準格式,從原始碼可以看出是以下的格式。
ExportGridToExcel(SaveDialog1.FileName,cxGrid1,True,True,True,'xls');
但是,後引數可以省略。如:
ExportGridToExcel(SaveDialog1.FileName,cxGrid1),引數是否需要是根據需要來定。各引數的含意可以看原始碼。原始碼如下:
procedure ExportGridToExcel(const AFileName: string; AGrid: TcxGrid;
AExpand: Boolean; ASaveAll: Boolean; AUseNativeFormat: Boolean; const AFileExt: string);
begin
ExportGridToFile(AFileName, cxExportToExcel, AGrid, AExpand, ASaveAll, AUseNativeFormat, '', '', '', AFileExt);
end;

相關文章