Hauptmenü – Datei – 2

Die Ansicht des Menüpunktes Datei. Hier in Lazarus gibt es viele Möglichkeiten die Datein zu Speichern und zu öfnnen.
Lazarus-Hauptmenü-Datei

Der Menüpunkt Datei-Öffnen öffnet eine Datei. Die kann mit einem Linksklick erfolgen oder mit der Tastenkombination “Strg+O”. Welche Datei das ist hängt von Ihnen ab Sie haben folgende Dateien zur Auswahl. Man nennt dies auch Filter. Der Filter steht Default auf alle Dateien die mit Lazarus in Irgendeiner weise etwas zu tun haben.

* .pas

Lazarus und Delphi Unit in diesen Units stehen die Quelltexte, die sie hier als Beispiele zu hauf finden werden.

*.pp

Mit der Endung pp sollte sich Lazarus von Delphi absetzen. Wenn man unbedingt will, kann lazarus spezifische Dateien *.pp nennen und *.pas die Delphi kompatiblen. Viele Klassen die zum eigntlichen Inventar geschrieben sind, haben die Endung *.pp. Wenn sie wollen, dann können Sie Programme die mit Lazarus geschriben sind *.pp nennen, sinnvoll wäre es aber dann nur wenn Sie genau wüssten, das Ihre Programme für Delphi nicht geeignet sind. Also *.pp kann von Lazarus gelesen werden. Beim öffnen der Datei wird diese genauso wie die Pascal-Datei behandelt.

*.lpi

Die Projekt-Datei in Lazarus ist eigentlich eine XML-Datei. Eine XML-Datei kann man mit einem Text-Editor Öffnen und mit diesem auch verändern. Dies wäre für eine Projektdatei fatal. Sie können sich den Inhalt anschauen, aber Änderungen sollten Sie an der XML-Projekt-Datei nicht vornehmen. Der Inhalt dieser Datei wird von Lazarus automatisch generiert. Er dient der Struktur und der Hierarchie Ihres Projektes. Wenn sie da was ändern wollen dann sollten Sie dies über den Projektinspektor machen.

*.lfm,*.dfm

Das sind die Frormular-Dateien von Lazarus einmal für die Delphi-Dateien(dfm) und einmal für die Lazarus Dateien(lfm). Anhand der Endung erkennt Lazarus ob er die Datei von Delphi nach Lazarus konvertieren muss oder nicht. Ansonsten sind in der Datei alle Fenster-Objekte verwaltet.Und zwar all die Objekte die verändert wurden und nicht mehr die Default-Einstellung haben. Beispielsweise die Fensterposition oder die Beschriftung eines Buttons. Hier wird beim öffnen der Projektdatei diese Datei mit geladen. Wenn ich mir nun das Fenster im Entwurfsmodus ansehe, dann wird die Größe des Fensters aus der Datei geholt. Ebenso wird der Objektinspektor mit den veränderten Werten bestückt. So dass, auf meinem Button deren Caption-Eigenschaft ich geändert habe nicht auf einmal wieder Button1 steht. Das gilt für alle veränderbaren Eigenschaften die ich über den Objektinspektor getätigt habe. Das gilt nicht für Eigenschaften die ich zur Laufzeit über meinen Quelltext ändere. Wenn ich also schreibe Button1.Caption:=’Speicher es ab.’; Dann steht im Objektinspektor immer noch der Wert, den ich dort eingetragen habe. Oder Default Buttonx (x=aufsteigender Zählwert).Diese Formulardateien existieren nur in Zusammenhang mit einem Formular. Es gibt Units die kein Formular brauchen und auch keins haben. Die Formulardatei heist immer genauso wie die unit. Also unit.pas und unit1.lfm gehören zusammen.

*.lpk

Hierbei handelt es sich um ein Lazarus- package-Datei diese wird benutzt um Ihr Lazarus zu erweitern. Sie können dieses Package laden und erweitern somit den Funktionsumfang. Hier kommen wir auch schon zu den meisten Anfängerfehlern. es ist sehr verlockend auf Erweiterungen zurück zu greifen, um sich so ein Programm zusammen zu klicken. Wenn Sie das vorhaben, kann ich Ihnen nur raten: Vergessen Sie es. Sie bekommen nicht immer die passenden Komponenten für Ihre Programme. Da müssen Sie Ihren Gripps schon selber anstrengen. Die mitgelieferten Erweiterungen in Lazarus sind schon sehr umfangreich. Die Befehle sind so vielfältig das sie, wenn ich hier alle beschreiben wollte den Rahmen dieser kleinen Internetseite sprengen würden.

Mehr Packgages

https://wiki.freepascal.org/Components_and_Code_examples/de

Sicherlich gibt es gute Erweiterungen für Ihr Programm, aber auch in diese Erweiterungen müssen Sie sich erst hineindenken bevor Sie diese in vollem Umfang benutzen können. Außerdem kann jeder ein Package anbieten, aber ob es Ihrem Programm gut tut oder es aber zum Absturz bringt, steht auf einem anderen Blatt. Der Nachteil an Packages ist wenn Sie Ihren Quelltext weitergeben wollen, sollten sie das passende Package gleich mit liefern. Oder, was noch viel schlimmer ist, Sie schreiben ein Programm mit einem Package. Sie speichern es ab und archivieren es 2 Jahre. Danach wollen Sie daran mal wieder was machen. Sie laden den Quelltext Ihres Programms und wollen es kompilieren , sie bekommen eine Fehlermeldung, dass ihr Package von damals fehlt. Verzweifelt suchen Sie Ihre Datenträger ab und dann das Internet…. Wenn Sie es dann nicht finden, können Sie nur komplett neu schreiben oder die Teile in denen das Package benötigt wird, durch eigenen Quelltext ersetzen. Wenn sie jedenfalls so eine Packagedatei laden und Installieren sollten Sie sehen das Sie, dieses Package aus den genannten Gründen immer schön nah an Ihrem Programm aufbewahren, denn es gehört eigentlich zu Ihrem Programm. Nach dem Ausführen und Installieren sollten sie Lazarus neu Starten. Danach befindet sich Lazarus nicht mehr im Auslieferungszustand und wurde von dem Package verändert. Dies kann negative Auswirkungen auf die Funktion von Lazarus haben. Falls Sie von Delphi nach Lazarus gewechselt sind, sei hier gesagt, dass man in Lazarus mit den Packages weit mehr anstellen kann, als in Delphi. Deswegen sollten Sie sich hier gut erkundigen bevor Sie was installieren. Im schlimmsten Fall müssen Sie Lazarus deinstallieren und neu installieren. Sie wären nicht der einzige dem das vor lauter experimentieren passiert ist. 🙂

Projektspeichern befindet sich im Verzeichnis Projekt.
Projekt speichern, befindet sich unter Projekt und nicht unter Datei.

*.lpr

Lazarus-Projektquelltext Dies ist die Haupt-Kompilierungsdatei. Wenn sie diese Datei öffnen dann werden automatisch und bei Bedarf alle dazugehörigen Dateien mit geladen und geöffnet. Diese Datei sollte nur in Ausnahmefällen geändert werden. Da diese Datei vom Compiler als erstes ausgeführt wird, werden hier auch die wichtigen Compiler-Directiven eingefügt. Diese Datei heißt vor dem Suffix (.) im unbenannten Fall Projekt1 und ändert sich, wenn Sie Ihr Projekt unter einem anderen Namen speichern. Dies machen Sie unter Projekt-Projekt speichern unter. Wenn Sie das gemacht haben, dann haben sie gleich 5 neue Dateinamen in Ihrem Dateiordner. Dies ist das Zeichen, das diese von der Umbenennung abhängig sind und zur Projekt-Datei gehören. Dies sind bis auf die Unit-Dateien eigentlich alle Standard-Dateien.

*.inc

Jetzt gibt es zum Schluss noch die Sonderdateien. Mit der *.Inc-Datei Zerlegt man eine große Unit in zwei oder mehrere kleine Units. Es kann bei größeren Projekten immer mal passieren das der Programm-Code zur Last wird, weil sie ihn immer überscrollen müssen. Dann haben Sie die Möglichkeit einen Teil des Quelltextes auszulagern. Und das geht mit einer *.inc-Datei.Wie das geht erkläre ich Hier.

*.lrs

Bei dieser Datei handelt es sich um eine so genannte Ressourcen-Datei. Diese Datei wird speziell aufbereitet um als Ressource in die Exe-Datei einzufließen. In Windows handelt es sich allerdings standardmäßig um die *.res Datei. Haben Sie sich vielleicht schon mal gewundert, dass Ihre Bilder die sie mit einer Imagelist oder einem Image eingebunden haben. In der Exe-Datei nicht mehr extra benötigt werden. Diese Bilder scheinen in der EXE-Datei verschwunden zu sein aber sie sind trotzdem da. Auch diese sind in der *.lrs oder *.res verschwunden. und werden Später Teil der EXE-Datei. Das ist gut wenn Sie die Datei weitergeben. Da brauchen Sie nur das Exe-File weitergeben. Das ist schlecht wenn Sie das Bild ändern wollen. Das ist Gut wenn kein anderer das Bild ändern sollte. Wäre es nicht schön wenn sie Texte,Listen,Wave-Dateien oder ganze Programmteile so in der EXE-Verschwinden lassen können. Geht alles! Wie ? Anleitung Hier.

*.lpl

Mit einer *.lpl-Datei soll man ein Package ohne die IDE kompilieren können. Hier muss ich leider passen. Vielleicht mach ich das mal, dann kann ich hierüber mehr berichten.

Teil 3 —>