home *** CD-ROM | disk | FTP | other *** search
- unit UFlDemoEdit;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, UFlDemoData,
- Grids, ComCtrls, ToolWin, UWaitCursor, ExtCtrls, ActnList, UFormatDialog, UFlxFormats,
- UFlexCelGrid, UFlxMessages, Menus, ZLib;
-
- type
- TDemoEdit = class(TForm)
- TabControl: TTabControl;
- Data: TFlexCelGrid;
- Panel1: TPanel;
- ActionList1: TActionList;
- ActionCopyFormat: TAction;
- ActionPasteFormat: TAction;
- ActionCellFormat: TAction;
- ActionRowFormat: TAction;
- ActionColFormat: TAction;
- ActionZoom: TAction;
- CoolBar1: TCoolBar;
- ToolBar: TToolBar;
- BtnSave: TToolButton;
- BtnClose: TToolButton;
- ToolBar1: TToolBar;
- ToolButton1: TToolButton;
- ToolButton2: TToolButton;
- ToolButton3: TToolButton;
- ToolButton4: TToolButton;
- ToolButton5: TToolButton;
- ToolButton6: TToolButton;
- ToolButton8: TToolButton;
- TrackBarZoom: TTrackBar;
- PanelZoom: TPanel;
- ToolButton9: TToolButton;
- ActionReadOnly: TAction;
- MainMenu1: TMainMenu;
- View1: TMenuItem;
- Zoom1: TMenuItem;
- Format1: TMenuItem;
- CopyFormat1: TMenuItem;
- PasteFormat1: TMenuItem;
- N1: TMenuItem;
- CellFormat1: TMenuItem;
- ColFormat1: TMenuItem;
- ColFormat2: TMenuItem;
- ActionSaveAs: TAction;
- ActionClose: TAction;
- File2: TMenuItem;
- ReadOnly1: TMenuItem;
- ReadOnly2: TMenuItem;
- N2: TMenuItem;
- Close1: TMenuItem;
- ToolButton7: TToolButton;
- MenuZoom: TPopupMenu;
- N101: TMenuItem;
- N251: TMenuItem;
- N1001: TMenuItem;
- N2001: TMenuItem;
- N4001: TMenuItem;
- Action10: TAction;
- Action25: TAction;
- Action100: TAction;
- Action200: TAction;
- Action400: TAction;
- Action50: TAction;
- N501: TMenuItem;
- N102: TMenuItem;
- N252: TMenuItem;
- N502: TMenuItem;
- N1002: TMenuItem;
- N2002: TMenuItem;
- N4002: TMenuItem;
- ActionFullWorksheet: TAction;
- ToolButton10: TToolButton;
- N3: TMenuItem;
- FullWorksheet1: TMenuItem;
- procedure TabControlChange(Sender: TObject);
- procedure ActionCopyFormatExecute(Sender: TObject);
- procedure ActionPasteFormatExecute(Sender: TObject);
- procedure ActionCellFormatExecute(Sender: TObject);
- procedure ActionRowFormatExecute(Sender: TObject);
- procedure ActionColFormatExecute(Sender: TObject);
- procedure TrackBarZoomChange(Sender: TObject);
- procedure ActionZoomExecute(Sender: TObject);
- procedure ActionReadOnlyExecute(Sender: TObject);
- procedure ActionSaveAsExecute(Sender: TObject);
- procedure ActionCloseExecute(Sender: TObject);
- procedure Action10Execute(Sender: TObject);
- procedure Action25Execute(Sender: TObject);
- procedure Action50Execute(Sender: TObject);
- procedure Action100Execute(Sender: TObject);
- procedure Action200Execute(Sender: TObject);
- procedure Action400Execute(Sender: TObject);
- procedure ActionFullWorksheetExecute(Sender: TObject);
- private
- ClipFormat: integer;
- FormatDialog: TFormatDialog;
-
- { Private declarations }
- public
- procedure FillData;
- { Public declarations }
- end;
-
- implementation
-
- {$R *.DFM}
-
- { TDemoEdit }
-
- procedure TDemoEdit.FillData;
- var
- p: integer;
- begin
- TabControl.Tabs.Clear;
-
- for p:=1 to DemoData.FlexCelImport.SheetCount do
- begin
- DemoData.FlexCelImport.ActiveSheet:=p;
- TabControl.Tabs.Add(DemoData.FlexCelImport.ActiveSheetName);
- end;
-
- DemoData.FlexCelImport.ActiveSheet:=1;
- TabControl.TabIndex:=DemoData.FlexCelImport.ActiveSheet-1;
- Data.LoadSheet;
- end;
-
- procedure TDemoEdit.TabControlChange(Sender: TObject);
- begin
- Data.ApplySheet;
- DemoData.FlexCelImport.ActiveSheet:= TabControl.TabIndex+1;
- Data.LoadSheet;
- end;
-
- procedure TDemoEdit.ActionCopyFormatExecute(Sender: TObject);
- begin
- ClipFormat:=DemoData.FlexCelImport.CellFormat[Data.Row, Data.Col];
- end;
-
- procedure TDemoEdit.ActionPasteFormatExecute(Sender: TObject);
- begin
- DemoData.FlexCelImport.CellFormat[Data.Row, Data.Col]:=ClipFormat;
- Data.Invalidate;
- end;
-
- procedure TDemoEdit.ActionCellFormatExecute(Sender: TObject);
- begin
- if FormatDialog=nil then
- begin
- FormatDialog:= TFormatDialog.Create(Self);
- FormatDialog.SetData(DemoData.FlexCelImport);
- end;
- FormatDialog.Caption:='Choose CELL Format:';
- FormatDialog.Load;
- FormatDialog.SelectedFormat:=DemoData.FlexCelImport.CellFormat[Data.Row, Data.Col];
- if FormatDialog.ShowModal<>mrOk then exit;
- DemoData.FlexCelImport.CellFormat[Data.Row, Data.Col]:=FormatDialog.SelectedFormat;
- end;
-
- procedure TDemoEdit.ActionRowFormatExecute(Sender: TObject);
- begin
- if FormatDialog=nil then
- begin
- FormatDialog:= TFormatDialog.Create(Self);
- FormatDialog.SetData(DemoData.FlexCelImport);
- end;
- FormatDialog.Caption:='Choose ROW Format:';
- FormatDialog.Load;
- FormatDialog.SelectedFormat:=DemoData.FlexCelImport.RowFormat[Data.Row];
- if FormatDialog.ShowModal<>mrOk then exit;
- DemoData.FlexCelImport.RowFormat[Data.Row]:=FormatDialog.SelectedFormat;
- Data.Invalidate;
- end;
-
- procedure TDemoEdit.ActionColFormatExecute(Sender: TObject);
- begin
- if FormatDialog=nil then
- begin
- FormatDialog:= TFormatDialog.Create(Self);
- FormatDialog.SetData(DemoData.FlexCelImport);
- end;
- FormatDialog.Caption:='Choose COLUMN Format:';
- FormatDialog.Load;
- FormatDialog.SelectedFormat:=DemoData.FlexCelImport.ColumnFormat[Data.Col];
- if FormatDialog.ShowModal<>mrOk then exit;
- DemoData.FlexCelImport.ColumnFormat[Data.Col]:=FormatDialog.SelectedFormat;
- Data.Invalidate;
- end;
-
- procedure TDemoEdit.TrackBarZoomChange(Sender: TObject);
- begin
- Data.Zoom:=(Sender as TTrackBar).Position;
- PanelZoom.Caption:=Format('%d%%',[ Data.Zoom]);
- end;
-
- procedure TDemoEdit.ActionZoomExecute(Sender: TObject);
- begin
- if TrackBarZoom.Position<25 then TrackBarZoom.Position:=25 else
- if TrackBarZoom.Position<50 then TrackBarZoom.Position:=50 else
- if TrackBarZoom.Position<100 then TrackBarZoom.Position:=100 else
- if TrackBarZoom.Position<200 then TrackBarZoom.Position:=200 else
- if TrackBarZoom.Position<400 then TrackBarZoom.Position:=400 else
- TrackBarZoom.Position:=10;
- end;
-
- procedure TDemoEdit.ActionReadOnlyExecute(Sender: TObject);
- begin
- ActionReadOnly.Checked:=not ActionReadOnly.Checked;
- Data.ReadOnly:=ActionReadOnly.Checked;
- end;
-
- procedure TDemoEdit.ActionSaveAsExecute(Sender: TObject);
- begin
- if not DemoData.XlsSaveDialog.Execute then exit;
- if FileExists(DemoData.XlsSaveDialog.FileName) then DeleteFile(DemoData.XlsSaveDialog.FileName);
-
- Data.ApplySheet;
- DemoData.FlexCelImport.Save(DemoData.XlsSaveDialog.FileName);
- end;
-
- procedure TDemoEdit.ActionCloseExecute(Sender: TObject);
- begin
- Close;
- end;
-
- procedure TDemoEdit.Action10Execute(Sender: TObject);
- begin
- TrackBarZoom.Position:=10;
- end;
-
- procedure TDemoEdit.Action25Execute(Sender: TObject);
- begin
- TrackBarZoom.Position:=25;
- end;
-
- procedure TDemoEdit.Action50Execute(Sender: TObject);
- begin
- TrackBarZoom.Position:=50;
- end;
-
- procedure TDemoEdit.Action100Execute(Sender: TObject);
- begin
- TrackBarZoom.Position:=100;
- end;
-
- procedure TDemoEdit.Action200Execute(Sender: TObject);
- begin
- TrackBarZoom.Position:=200;
- end;
-
- procedure TDemoEdit.Action400Execute(Sender: TObject);
- begin
- TrackBarZoom.Position:=400;
- end;
-
-
- procedure TDemoEdit.ActionFullWorksheetExecute(Sender: TObject);
- begin
- ActionFullWorksheet.Checked:=not ActionFullWorksheet.Checked;
- Data.FullWorksheet:= ActionFullWorksheet.Checked;
- Data.LoadSheet;
- end;
-
- end.
-