unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls,
Graphics, Dialogs, StdCtrls, ExtCtrls, Buttons;
type
{ TFmain }
TFmain = class(TForm)
btnSHOWpanel: TButton;
brnEXIT: TSpeedButton;
procedure brnEXITClick(Sender: TObject);
procedure btnSHOWpanelClick(Sender: TObject);
procedure AnotherButtonClick(Sender: TObject); // eigen proc.
procedure btnTESTClick(Sender: TObject); // eigen proc.
private
public
Pan1: TPanel;
lblTEXT: TLabel;
btnJAPRINT: TSpeedButton;
btnNEENPRINT: TSpeedButton;
end;
var
Fmain: TFmain;
implementation
{$R *.frm}
{ TFmain }
// Eigen proc. om het Panel te verwijderen.
// De naam v.d. proc. moet een extra nieuwe naam hebben.
procedure TFmain.AnotherButtonClick(Sender: TObject);
begin
FreeAndNil(Pan1);
end;
// Deze proc. is enkel nodig om een "Showmessage" te tonen, verder niets!
procedure TFmain.btnTESTClick(Sender: TObject);
begin
Showmessage(' YES button. ');
end;
procedure TFmain.btnSHOWpanelClick(Sender: TObject);
begin
// = Panel op FMain zetten
Pan1 := TPanel.Create(Self);
with Pan1 do
begin
Parent := Fmain; // Moet de naam v.d. Form.
Left:= 30;
Top := 50;
Width := 500;
Height := 250;
Color:= clYellow;
Caption:= ' Make your choice ';
Show;
// = Label op Panl zetten
lblTEXT:=TLabel.Create(self);
with lblTEXT do
begin
Parent := Pan1;
Left:= 33;
Top:= 23;
Font.Size:= 14;
Font.Name:= 'arial';
Font.Style:= [fsBold];
Font.Color:= clYellow;
Font.Style:= [fsBold];
Caption:= ' T E X T !';
end;
// = BUTTONJAPRINT op Panl zetten
btnJAPRINT:=TSpeedbutton.Create(self);
with btnJAPRINT do
begin
Parent := Pan1;
Caption := ' YES ';
Left := 30;
Top := 100;
Width := 100;
Height := 70;
Cursor:= crHandPoint;
font.Name:= 'arial';
font.Size:= 13;
font.Style:= [fsBold];
font.Color:= clRed;
// OnClick heeft een eigen proc. nodig.
OnClick := @btnTESTClick;
end;
// = BUTTONNEENPRINT op Panl zetten
btnNEENPRINT:=TSpeedbutton.Create(self);
with btnNEENPRINT do
begin
Parent := Pan1;
Caption := ' CLOSE ';
Left := 350;
Top := 100;
Width := 100;
Height := 70;
Cursor:= crHandPoint;
font.Name:= 'arial';
font.Size:= 13;
font.Style:= [fsBold];
font.Color:= clBlack;
// Bij klikken op de "btnNEENPRINT" wordt het Paneel verwijderd via de eigen proc.
// OnClick heeft een eigen proc. nodig.
OnClick:= @AnotherButtonClick;
end;
end;
end;
procedure TFmain.brnEXITClick(Sender: TObject);
begin
Application.Terminate;
end;
end.