程序员人生 网站导航

cxSpreadBook 或 cxSpreadSheet 设置成文本格式

栏目:互联网时间:2014-11-11 08:55:06

uses

     cxSSStyles,cxSSDesigner;


Type 

  TStyleAccess = class(TcxSSCellStyle);
  TSheetAccess = class(TcxSSBookSheet);


procedure TForm2.Button16Click(Sender: TObject);

var
  Row,Col: Integer;
  AStyle: TcxSSCellStyle;
  CurrentStyle: integer;
begin 
  TSheetAccess(cxSpreadBook.ActiveSheet).Owner.BeginUpdate;
  try
    for Row := 0 to cxSpreadBook.ActiveSheet.RowCount - 1 do
      for Col := 0 to cxSpreadBook.ActiveSheet.ColumnCount - 1 do
      begin
        AStyle :=  cxSpreadBook.ActiveSheet.GetCellObject(Col,row).Style;
        CurrentStyle := TStyleAccess(AStyle).StyleInfo.FormatIndex;
        if  CurrentStyle =0 then  //像那些时间类型的 不能强迫转换成文本 不然会出错 
        begin
          TStyleAccess(AStyle).StyleInfo.FormatIndex := 49;
          TStyleAccess(AStyle).DoOnChange(AStyle, siFormat);
        end;
      end;
  finally
    TSheetAccess(cxSpreadBook.ActiveSheet).Owner.EndUpdate;
  end;

end;


------分隔线----------------------------
------分隔线----------------------------

最新技术推荐