mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-08 07:16:00 +02:00
Examples, TabOrder: fixed to use TPageControl, made 'Close' button work
git-svn-id: trunk@29583 -
This commit is contained in:
parent
11a403bf19
commit
a6d35d4624
@ -1,28 +1,18 @@
|
||||
<?xml version="1.0"?>
|
||||
<CONFIG>
|
||||
<ProjectOptions>
|
||||
<PathDelim Value="/"/>
|
||||
<Version Value="5"/>
|
||||
<Version Value="9"/>
|
||||
<General>
|
||||
<Flags>
|
||||
<SaveOnlyProjectUnits Value="True"/>
|
||||
<LRSInOutputDirectory Value="False"/>
|
||||
</Flags>
|
||||
<MainUnit Value="0"/>
|
||||
<TargetFileExt Value=""/>
|
||||
<ActiveEditorIndexAtStart Value="0"/>
|
||||
<ActiveWindowIndexAtStart Value="0"/>
|
||||
</General>
|
||||
<Units Count="1">
|
||||
<Unit0>
|
||||
<CursorPos X="12" Y="33"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<Filename Value="taborder.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<Loaded Value="True"/>
|
||||
<TopLine Value="1"/>
|
||||
<UnitName Value="TabOrder"/>
|
||||
<UsageCount Value="20"/>
|
||||
</Unit0>
|
||||
</Units>
|
||||
<BuildModes Count="1">
|
||||
<Item1 Name="default" Default="True"/>
|
||||
</BuildModes>
|
||||
<PublishOptions>
|
||||
<Version Value="2"/>
|
||||
<IgnoreBinaries Value="False"/>
|
||||
@ -40,23 +30,36 @@
|
||||
<PackageName Value="LCL"/>
|
||||
</Item1>
|
||||
</RequiredPackages>
|
||||
<Units Count="1">
|
||||
<Unit0>
|
||||
<Filename Value="taborder.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="TabOrder"/>
|
||||
<IsVisibleTab Value="True"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="44"/>
|
||||
<CursorPos X="19" Y="78"/>
|
||||
<UsageCount Value="21"/>
|
||||
<Loaded Value="True"/>
|
||||
<LoadedDesigner Value="True"/>
|
||||
</Unit0>
|
||||
</Units>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
<Version Value="5"/>
|
||||
<Version Value="10"/>
|
||||
<SearchPaths>
|
||||
<SrcPath Value="$(LazarusDir)/lcl/;$(LazarusDir)/lcl/interfaces/$(LCLWidgetType)/"/>
|
||||
<SrcPath Value="$(LazarusDir)/lcl;$(LazarusDir)/lcl/interfaces/$(LCLWidgetType)"/>
|
||||
</SearchPaths>
|
||||
<CodeGeneration>
|
||||
<Generate Value="Faster"/>
|
||||
</CodeGeneration>
|
||||
<Linking>
|
||||
<Options>
|
||||
<Win32>
|
||||
<GraphicApplication Value="True"/>
|
||||
</Win32>
|
||||
</Options>
|
||||
</Linking>
|
||||
<Parsing>
|
||||
<SyntaxOptions>
|
||||
<UseAnsiStrings Value="False"/>
|
||||
</SyntaxOptions>
|
||||
</Parsing>
|
||||
<Other>
|
||||
<CompilerMessages>
|
||||
<UseMsgFile Value="True"/>
|
||||
</CompilerMessages>
|
||||
<CompilerPath Value="$(CompPath)"/>
|
||||
</Other>
|
||||
</CompilerOptions>
|
||||
|
@ -3,23 +3,22 @@ program TabOrder;
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
uses
|
||||
Interfaces, Classes, SysUtils, Forms, Controls, Buttons, StdCtrls, ExtCtrls;
|
||||
Interfaces, Classes, SysUtils, Forms, Controls, Buttons, StdCtrls, ExtCtrls,
|
||||
ComCtrls;
|
||||
|
||||
type
|
||||
|
||||
{ TForm1 }
|
||||
|
||||
TForm1 = class(TForm)
|
||||
NoteBook: TNotebook;
|
||||
Page1: TPage;
|
||||
Page2: TPage;
|
||||
Page3: TPage;
|
||||
PageCtrl: TPageControl;
|
||||
CloseButton: TButton;
|
||||
Edit1: TEdit;
|
||||
Edit2: TEdit;
|
||||
Label1: TLabel;
|
||||
public
|
||||
constructor Create(TheOwner: TComponent); override;
|
||||
procedure CloseButtonClick(Sender: TObject);
|
||||
procedure WriteTabOrder;
|
||||
end;
|
||||
|
||||
@ -32,7 +31,7 @@ constructor TForm1.Create(TheOwner: TComponent);
|
||||
Label1:=TLabel.Create(Self);
|
||||
with Label1 do begin
|
||||
Name:='Label1';
|
||||
Parent:=Page1;
|
||||
Parent:=PageCtrl.Page[0];
|
||||
SetBounds(10,10,250,Height);
|
||||
Caption:='TabOrder: First Edit below, then Edit above';
|
||||
end;
|
||||
@ -40,14 +39,14 @@ constructor TForm1.Create(TheOwner: TComponent);
|
||||
Edit1:=TEdit.Create(Self);
|
||||
with Edit1 do begin
|
||||
Name:='Edit1';
|
||||
Parent:=Page1;
|
||||
Parent:=PageCtrl.Page[0];
|
||||
SetBounds(10,40,100,Height);
|
||||
end;
|
||||
|
||||
Edit2:=TEdit.Create(Self);
|
||||
with Edit2 do begin
|
||||
Name:='Edit2';
|
||||
Parent:=Page1;
|
||||
Parent:=PageCtrl.Page[0];
|
||||
SetBounds(10,70,100,Height);
|
||||
end;
|
||||
|
||||
@ -66,31 +65,28 @@ constructor TForm1.Create(TheOwner: TComponent);
|
||||
begin
|
||||
end;
|
||||
|
||||
var
|
||||
i: integer;
|
||||
begin
|
||||
inherited Create(TheOwner);
|
||||
inherited CreateNew(TheOwner, 1);
|
||||
Name:='Form1';
|
||||
Position:=poScreenCenter;
|
||||
SetInitialBounds(0,0,400,300);
|
||||
|
||||
NoteBook:=TNotebook.Create(Self);
|
||||
with NoteBook do begin
|
||||
Name:='NoteBook';
|
||||
PageCtrl:=TPageControl.Create(Self);
|
||||
with PageCtrl do begin
|
||||
Name:='PageCtrl';
|
||||
Parent:=Self;
|
||||
Align:=alTop;
|
||||
Height:=Parent.ClientHeight-40;
|
||||
|
||||
Pages.Add('Page1');
|
||||
Page1:=Page[0];
|
||||
Page1.Name:='Page1';
|
||||
|
||||
Pages.Add('Page2');
|
||||
Page2:=Page[1];
|
||||
Page2.Name:='Page2';
|
||||
|
||||
Pages.Add('Page3');
|
||||
Page3:=Page[2];
|
||||
Page3.Name:='Page3';
|
||||
|
||||
for i:=1 to 3 do
|
||||
with TTabSheet.Create(PageCtrl) do
|
||||
begin
|
||||
PageControl:=PageCtrl;
|
||||
Name:='Page'+IntToStr(i);
|
||||
Caption:=Name;
|
||||
end;
|
||||
Anchors:=[akLeft,akTop,akRight,akBottom];
|
||||
PageIndex:=0;
|
||||
end;
|
||||
@ -102,7 +98,7 @@ begin
|
||||
Caption:='Close';
|
||||
Anchors:=[akRight,akBottom];
|
||||
SetBounds(Parent.ClientWidth-110,Parent.ClientHeight-35,100,Height);
|
||||
ModalResult:=mrCancel;
|
||||
OnClick:=@CloseButtonClick;
|
||||
end;
|
||||
|
||||
CreatePage1;
|
||||
@ -112,18 +108,23 @@ begin
|
||||
// define TabOrder
|
||||
CloseButton.TabStop:=true;
|
||||
CloseButton.TabOrder:=0;
|
||||
NoteBook.TabStop:=true;
|
||||
NoteBook.TabOrder:=1;
|
||||
Page1.TabStop:=true;
|
||||
Page1.TabOrder:=2;
|
||||
Page2.TabStop:=true;
|
||||
Page2.TabOrder:=3;
|
||||
Page3.TabStop:=true;
|
||||
Page3.TabOrder:=4;
|
||||
PageCtrl.TabStop:=true;
|
||||
PageCtrl.TabOrder:=1;
|
||||
PageCtrl.Page[0].TabStop:=true;
|
||||
PageCtrl.Page[0].TabOrder:=2;
|
||||
PageCtrl.Page[1].TabStop:=true;
|
||||
PageCtrl.Page[1].TabOrder:=3;
|
||||
PageCtrl.Page[2].TabStop:=true;
|
||||
PageCtrl.Page[2].TabOrder:=4;
|
||||
|
||||
WriteTabOrder;
|
||||
end;
|
||||
|
||||
procedure TForm1.CloseButtonClick(Sender: TObject);
|
||||
begin
|
||||
Close;
|
||||
end;
|
||||
|
||||
procedure TForm1.WriteTabOrder;
|
||||
|
||||
procedure WriteTabOrderTree(const Prefix: string; AControl: TControl);
|
||||
|
Loading…
Reference in New Issue
Block a user