summaryrefslogtreecommitdiff
path: root/examples/gui/gridtest
diff options
context:
space:
mode:
Diffstat (limited to 'examples/gui/gridtest')
-rw-r--r--examples/gui/gridtest/gridtest.lpr278
1 files changed, 156 insertions, 122 deletions
diff --git a/examples/gui/gridtest/gridtest.lpr b/examples/gui/gridtest/gridtest.lpr
index 60d75cdc..66802e7c 100644
--- a/examples/gui/gridtest/gridtest.lpr
+++ b/examples/gui/gridtest/gridtest.lpr
@@ -1,122 +1,156 @@
-program gridtest;
-
-{$mode objfpc}{$H+}
-
-uses
- {$IFDEF UNIX}{$IFDEF UseCThreads}
- cthreads,
- {$ENDIF}{$ENDIF}
- Classes,
- SysUtils,
- fpgfx,
- gui_form,
- gui_grid,
- gui_button,
- gui_checkbox;
-
-
-type
-
- TMainForm = class(TfpgForm)
- private
- btnQuit: TfpgButton;
- grdMain: TfpgGrid;
- chkShowHeader: TfpgCheckBox;
- chkShowGrid: TfpgCheckBox;
- chkRowSelect: TfpgCheckBox;
- chkDisabled: TfpgCheckBox;
- procedure chkDisabledChange(Sender: TObject);
- procedure chkRowSelectChange(Sender: TObject);
- procedure chkShowHeaderChange(Sender: TObject);
- procedure chkShowGridChange(Sender: TObject);
- procedure btnQuitClick(Sender: TObject);
- public
- constructor Create(AOwner: TComponent); override;
- end;
-
-{ TMainForm }
-
-procedure TMainForm.chkDisabledChange(Sender: TObject);
-begin
- grdMain.Enabled := not chkDisabled.Checked;
-end;
-
-procedure TMainForm.chkRowSelectChange(Sender: TObject);
-begin
- grdMain.RowSelect := chkRowSelect.Checked;
-end;
-
-procedure TMainForm.chkShowHeaderChange(Sender: TObject);
-begin
- grdMain.ShowHeader := chkShowHeader.Checked;
-end;
-
-procedure TMainForm.chkShowGridChange(Sender: TObject);
-begin
- grdMain.ShowGrid := chkShowGrid.Checked;
-end;
-
-procedure TMainForm.btnQuitClick(Sender: TObject);
-begin
- Close;
-end;
-
-constructor TMainForm.Create(AOwner: TComponent);
-var
- c: integer;
-begin
- inherited Create(AOwner);
- WindowTitle := 'Grid control test';
- SetPosition(100, 100, 566, 350);
-
- btnQuit := CreateButton(self, 476, 320, 80, 'Quit', @btnQuitClick);
- btnQuit.ImageName := 'stdimg.Quit';
- btnQuit.ShowImage := True;
- btnQuit.Anchors := [anRight, anBottom];
-
- grdMain := TfpgGrid.Create(self);
- grdMain.Top := 10;
- grdMain.Left := 10;
- grdMain.Width := Width - 20;
- grdMain.Height := 300;
- grdMain.Anchors := [anLeft, anTop, anRight, anBottom];
- grdMain.RowCount := 25;
- for c := 1 to grdMain.ColumnCount do
- grdMain.Columns[c-1].Title := 'Title ' + IntToStr(c);
-
- chkShowHeader := CreateCheckBox(self, 10, 320, 'Show Header');
- chkShowHeader.Checked := True;
- chkShowHeader.OnChange := @chkShowHeaderChange;
- chkShowHeader.Anchors := [anLeft, anBottom];
-
- chkShowGrid := CreateCheckBox(self, chkShowHeader.Right+10, 320, 'Show Grid');
- chkShowGrid.Checked := True;
- chkShowGrid.OnChange := @chkShowGridChange;
- chkShowGrid.Anchors := [anLeft, anBottom];
-
- chkRowSelect := CreateCheckBox(self, chkShowGrid.Right+10, 320, 'Row Select');
- chkRowSelect.Checked := False;
- chkRowSelect.OnChange := @chkRowSelectChange;
- chkRowSelect.Anchors := [anLeft, anBottom];
-
- chkDisabled := CreateCheckBox(self, chkRowSelect.Right+10, 320, 'Disabled');
- chkDisabled.Checked := False;
- chkDisabled.OnChange := @chkDisabledChange;
- chkDisabled.Anchors := [anLeft, anBottom];
-end;
-
-
-procedure MainProc;
-var
- frm: TMainForm;
-begin
- fpgApplication.Initialize;
- frm := TMainForm.Create(nil);
- frm.Show;
- fpgApplication.Run;
-end;
-
-begin
- MainProc;
-end.
-
+program gridtest;
+
+{$mode objfpc}{$H+}
+
+uses
+ {$IFDEF UNIX}{$IFDEF UseCThreads}
+ cthreads,
+ {$ENDIF}{$ENDIF}
+ Classes,
+ SysUtils,
+ fpgfx,
+ gui_form,
+ gui_grid,
+ gui_button,
+ gui_checkbox,
+ gui_tab;
+
+
+type
+
+ TMainForm = class(TfpgForm)
+ private
+ btnQuit: TfpgButton;
+ pagecontrol: TfpgPageControl;
+ tsTab1: TfpgTabSheet;
+ tsTab2: TfpgTabSheet;
+ grdMain: TfpgGrid;
+ stringgrid: TfpgStringGrid;
+ chkShowHeader: TfpgCheckBox;
+ chkShowGrid: TfpgCheckBox;
+ chkRowSelect: TfpgCheckBox;
+ chkDisabled: TfpgCheckBox;
+ procedure chkDisabledChange(Sender: TObject);
+ procedure chkRowSelectChange(Sender: TObject);
+ procedure chkShowHeaderChange(Sender: TObject);
+ procedure chkShowGridChange(Sender: TObject);
+ procedure btnQuitClick(Sender: TObject);
+ protected
+ procedure HandleShow; override;
+ public
+ constructor Create(AOwner: TComponent); override;
+ end;
+
+{ TMainForm }
+
+procedure TMainForm.chkDisabledChange(Sender: TObject);
+begin
+ grdMain.Enabled := not chkDisabled.Checked;
+end;
+
+procedure TMainForm.chkRowSelectChange(Sender: TObject);
+begin
+ grdMain.RowSelect := chkRowSelect.Checked;
+end;
+
+procedure TMainForm.chkShowHeaderChange(Sender: TObject);
+begin
+ grdMain.ShowHeader := chkShowHeader.Checked;
+end;
+
+procedure TMainForm.chkShowGridChange(Sender: TObject);
+begin
+ grdMain.ShowGrid := chkShowGrid.Checked;
+end;
+
+procedure TMainForm.btnQuitClick(Sender: TObject);
+begin
+ Close;
+end;
+
+procedure TMainForm.HandleShow;
+begin
+ inherited HandleShow;
+end;
+
+constructor TMainForm.Create(AOwner: TComponent);
+var
+ c: integer;
+ r: integer;
+begin
+ inherited Create(AOwner);
+ WindowTitle := 'Grid control test';
+ SetPosition(100, 100, 566, 350);
+
+ btnQuit := CreateButton(self, 476, 320, 80, 'Quit', @btnQuitClick);
+ btnQuit.ImageName := 'stdimg.Quit';
+ btnQuit.ShowImage := True;
+ btnQuit.Anchors := [anRight, anBottom];
+
+ pagecontrol := TfpgPageControl.Create(self);
+ pagecontrol.SetPosition(10, 10, Width-20, 300);
+ pagecontrol.Anchors := [anLeft, anTop, anRight, anBottom];
+
+ tsTab1 := TfpgTabSheet.Create(pagecontrol);
+ tsTab1.Text := 'Base Grid';
+ grdMain := TfpgGrid.Create(tsTab1);
+ grdMain.SetPosition(10, 10, Width-50, 250);
+// grdMain.Anchors := [anLeft, anTop, anRight, anBottom];
+ grdMain.RowCount := 25;
+ for c := 1 to grdMain.ColumnCount do
+ grdMain.Columns[c-1].Title := 'Title ' + IntToStr(c);
+
+
+ tsTab2 := pagecontrol.AppendTabSheet('String Grid');
+ stringgrid := TfpgStringGrid.Create(tsTab2);
+ stringgrid.SetPosition(10, 10, Width-50, 250);
+ stringgrid.ColumnCount := 2;
+ stringgrid.RowCount := 5;
+ stringgrid.Cells[2, 1] := 'hello';
+ stringgrid.Cells[5, 2] := 'hello';
+ stringgrid.ColumnTitle[1] := 'Column 1';
+// stringgrid.Columns[1].Title := 'Column 1';
+// stringgrid.Columns[2].Title := 'Col2';
+ //for r := 1 to stringgrid.RowCount do
+ //for c := 1 to stringgrid.ColumnCount do
+ //stringgrid.Cells[r, c] := IntToStr(r) + ',' + IntToStr(c);
+// stringgrid.Anchors := [anLeft, anTop, anRight, anBottom];
+
+ pagecontrol.ActivePageIndex := 0;
+
+ chkShowHeader := CreateCheckBox(self, 10, 320, 'Show Header');
+ chkShowHeader.Checked := True;
+ chkShowHeader.OnChange := @chkShowHeaderChange;
+ chkShowHeader.Anchors := [anLeft, anBottom];
+
+ chkShowGrid := CreateCheckBox(self, chkShowHeader.Right+10, 320, 'Show Grid');
+ chkShowGrid.Checked := True;
+ chkShowGrid.OnChange := @chkShowGridChange;
+ chkShowGrid.Anchors := [anLeft, anBottom];
+
+ chkRowSelect := CreateCheckBox(self, chkShowGrid.Right+10, 320, 'Row Select');
+ chkRowSelect.Checked := False;
+ chkRowSelect.OnChange := @chkRowSelectChange;
+ chkRowSelect.Anchors := [anLeft, anBottom];
+
+ chkDisabled := CreateCheckBox(self, chkRowSelect.Right+10, 320, 'Disabled');
+ chkDisabled.Checked := False;
+ chkDisabled.OnChange := @chkDisabledChange;
+ chkDisabled.Anchors := [anLeft, anBottom];
+end;
+
+
+procedure MainProc;
+var
+ frm: TMainForm;
+begin
+ fpgApplication.Initialize;
+ frm := TMainForm.Create(nil);
+ frm.Show;
+ fpgApplication.Run;
+end;
+
+begin
+ MainProc;
+end.
+