In diesem Beitrag erläutere ich kurz und knapp den Aufbau einer Unit. Dabei schreibe ich die kleine Unit “uFenster”, die ein normales Form mit zwei Buttons und einem Panel darstellt.
Ein Button schließt die Anwendung, ein weiterer Färbt ein Panel rot und ändert die Aufschrift.
Eine Unit besteht hauptsächlich aus einem öffentlichen Teil (Interface) und einem privaten Teil (Implementation). Ich gehe nun die einzelnen Abschnitte einer Unit Schritt für Schritt durch und erläutere sie kurz.
Der Programmkopf
Eine Unit (Software-Modul) beginnt immer mit dem Schlüsselwort Unit.
UNIT uFenster;
Die Kurzbeschreibung
Die Kurzbeschreibung ist kein muss, sollte aber von jedem ordentlichen Programmierer eingefügt werden. Sie sollte die im Beispiel enthaltenen Aspekte beinhalten, um sofort ersichtlich werden zu lassen, von was sie handelt und was sie tut. Jede Zeile beginnt mit “//”, da dies vom Compiler als Kommentar und nicht als Anweisung verstanden wird.
// **********************************************
// K L A S S E : FensterFrm
// ----------------------------------------------
// Version : 1.0
// Autor : Max Mustermann
//
// Aufgabe : Fenster uebernimmt Ein-/Ausgabe und
// steuert die Funktionen über ein GUI.
// Compiler : DELPHI 7.0
// Aenderung:
// **********************************************
Die Schnittstelle
Die Schnittstelle wird mit dem Wort “Interface” eingeleitet.
Falls andere Units benutzt werden, müssen sie hier vorher deklariert werden.
INTERFACE
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
Die Typendefinition
Nun wird die Objektklasse definiert. Dabei ist das Schluesselwort “class” zu verwenden.
In der Objektklasse sind die Eigenschaften als Variablen und die Methoden als Kopfzeilen der Prozeduren und Funktionen anzugeben.
Hinter private dürfen nur interne Variablen und Prozeduren deklariert werden, hinter public öffentliche.
Hinter var stehen die Bezeichner der benötigten Exemplare.
type
TFensterFrm = class(TForm)
EndeBtn : TButton;
RotBtn : TButton;
MeldePnl : TPanel;
procedure EndeBtnClick(Sender: TObject);
procedure RotBtnClick (Sender: TObject);
private
public
end;
var
Fenster : TFensterFrm ;
Implementation
In der Implementation, nicht-öffentlichen Teil einer Unit, findet die Kodierung der Methoden (also der Prozeduren oder Funktionen) statt.
Dabei muss darauf geachtet werden, dass bei den Methodennamen der Typbezeichner der Objektklasse mit einem Punkt vorangestellt wird. Dadurch wird der Bezug zur Deklaration in der Klasse hergestellt.
//================================================
IMPLEMENTATION
{$R *.DFM}
procedure TFensterFrm.EndeBtnClick(Sender: TObject);
begin
FensterFrm.Close;
end;
procedure TFensterFrm.RotBtnClick(Sender: TObject);
begin
MeldePnl.Color := clRed;
MeldePnl.Caption := ' R O T - Button gedrückt ';
end;
Das Ende der Unit
Das Ende der Unit wird schlichtweg durch den Befehl “End” ausgedrückt. Zu beachten ist, dass dieser hier mit einem Punkt und keinem Semikolon abgeschlossen wird.
END.