TPanel/de
From Lazarus wiki
Jump to navigationJump to search
│
Deutsch (de) │
English (en) │
suomi (fi) │
français (fr) │
日本語 (ja) │
русский (ru) │
Ein TPanel ist eine Komponente, die ein Panel auf einem Formular erstellt. Das TPanel ist in der Registerkarte Standard der Komponentenpalette eingeordnet. Ein TPanel kann als sichtbarer Container für andere Komponenten fungieren.
Beispiel
Eine Möglichkeit zur Verwendung von Panels besteht im Ein- und Ausblenden mehrerer Komponenten. Anstatt einzelne Komponenten ein- und auszublenden, können Sie mit nur einem Befehl das Panel und alle untergeordneten Komponenten ein- und ausblenden. In diesem Beispiel werden die folgenden Komponenten genutzt: TButton und TShape
Erstellen des Codes
- Erstellen Sie eine neue leere Graphische Benutzeroberfläche mit dem Formular Form1
- Erstellen Sie ein OnCreate-Ereignis für das Formular, indem Sie darauf klicken, in den Objektinspektor und dort in die Registerkarte "Ereignisse" wechseln und anschließend das OnCreate-Ereignis auswählen. Klicken Sie den Button [...] oder klicken Sie doppelt auf das eben erstellte Formular.
- Fügen Sie den folgenden Code hinzu (vervollständigen Sie die fehlenden Teile):
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, Forms, Controls, Graphics, Dialogs, ExtCtrls, StdCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
aPanel:TPanel;
procedure aButtonClick(Sender: TObject);
public
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.FormCreate(Sender: TObject);
var
aButton:TButton;
aShape1,aShape2:TShape;
begin
Caption :='Panel demo';
aButton:=TButton.Create(Self);
aButton.Parent:=Self;
aButton.Caption:= 'Show/Hide';
aPanel:=TPanel.Create(Self);
aPanel.Parent:=Self;
aPanel.Caption:='';
aShape1:=TShape.Create(aPanel);
aShape1.Parent:=aPanel;
aShape1.Shape:=stStar;
aShape1.Top := 5;
aShape2:=TShape.Create(aPanel);
aShape2.Parent:=aPanel;
aShape2.Shape:=stStar;
aShape2.Top := 5;
aShape2.Left:=aShape1.Width+10;
aPanel.Height:=aShape1.Height+10;
aButton.Top:=aPanel.Height+10;
aButton.OnClick:=@aButtonClick;
Height := aButton.Top+aButton.Height+10;
end;
procedure TForm1.aButtonClick(Sender: TObject); //the event handler for the button
begin
if (Sender is TButton)
then begin
if aPanel.Visible then aPanel.Visible := false else aPanel.Visible := true;
end;
end;
end.
Siehe auch