Freepascal eigene Units und Klassen

Einleitung – Freepascal eigene Units und Klassen

Abb. 1.01 Test Software

In diesem Artikel möchte ich dir beschreiben wie du eigene Units und Klassen nutzen kannst und diese aus einer anderen Unit aufrufst. Das Auslagern von Funktionen und Prozeduren ist bei größeren Programmen wichtig, da diese Realitätsnah programmiert werden sollen. Hier kann es zum Beispiel für einen Verleih von Autos Klassen für die Erstellung von PDF Rechnungen geben oder für die Datenbank Abfrage. Zur besseren Übersicht nutzen wir allerdings das Form1 ohne PopUp Forms für die Benutzeroberfläche. Unsere Software würde ohne eine Auslagerung von Quellcode sehr unübersichtlich werden. Realitätsnah heißt bei einer Programmierung. Eine Klasse Datenbanken sollte nur Zugriffe auf Datenbanken managen, aber keine PDF Rechnungen erstellen.

Teil 01: Freepascal eigene Unit und Klassen erstellen

Erstelle eine neue Anwendung und klicke auf „New Unit“ im Hauptfenster. In meinem Beispiel erstelle ich eine „mathe“ Unit und eine Klasse vom Typ TMyMathe siehe links Abbildung 1.01. Wichtig ist hier bei der Unit die Kleinschreibung des Unit Namens „mathe“. Klicke jetzt auf speichern und speichere die Unit unter „mathe“ ab. Der Name des Projektes und der Unit indem das Form1 angelegt ist speichere unter „project“ ab. Du musst nun noch ab Zeile 10 den „type“ hinzufügen. Hier erstellen wir die Klasse vom Typ „TMyMathe“. Damit wir die Funktion auch wie aus den Formular Units aufrufen können müssen wir noch die Variable in Zeile 18 anlegen „MyMathe: TMyMathe“.

Abb. 1.02 Eigene Unit und Klasse

Teil 02: Die Funktion TMyMathe.MalFuenf()

Die Funktion die nur zu Testzwecken dient, ist sehr einfach und gibt als Resultat die übergebene Zahl mit fünf Mal. Die Zahlen sind vom Variablen Typ Integer.

Teil 03: Das Form1

Im Form1 legen wir zwei Editfelder an und einen Button. Die Editfelder platzieren wir übereinander und den Button unter den Editfelder. Das oberste Editfeld erhält den Namen EdtZahl01 und das untere EdtErgebnis. Der Button bleibt Button1. Als OnClick Ereignis erstellen wir die unten stehende Prozedur. In Zeile 36 deklarieren wir die Variable intZahl als Integer. Ab Zeile 38 beginnt die eigentliche Prozedur. In der nächsten Zeile 39 speicherst du in der Variable intZahl, den durch die Funktion StrToInt() in der Eigenschaft Test des Editfeldes EdtZahl01 abgelegten Wer als Integer. Die Zeile 40 ruft nun unsere Function der Unit „mathe“ und der Klasse „TMyMathe“ auf. Durch die hinterlegte Variable in der Unit „mathe“ können wir die Funktion mit MyMathe.MalFuenf(intZahl) aufrufen. Die Ausgabe erfolgt über das Editfeld EdtErgebnis als Text. Hierfür musst du das Ergenis von einem Integer zu einem Text „String“ umformen. Dies kannst du mit der Funktion „IntToStr()“ umsetzen.

Abb. 1.03 Prozedur Buttin1Click

Teil 04: Testdurchlauf – Freepascal eigene Unit und Klassen

Um unseren kleines Testprogramm mal auszuführen und zu testen, kannst du in das obere Editfeld eine 5 eingeben. Im Editfeld „EdtErgebnis“ sollte dann eine 25 als Ergebnis erscheinen.

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.