Marc hat geschrieben:Problem wird sein wie mache ich einen Code so das ich ein Hauptprogramm habe und eine separate Form1?
Die Idee dahinter ist, dass Du nicht alles ins Hauptprogramm packst, sondern für verschiedene Teilaufgaben Deines Programms verschiedene Units = Module schreibst, die dann ins Hauptprogramm eingebunden werden. Das sieht am Anfang umständlich aus, wird sich aber ganz schnell als sehr praktisch erweisen.
Du machst jetzt Folgendes:
1. Lazarus öffnen.
2. Menu Projekt => Neues Projekt
3. Im Fenster Erzeuge neues Projekt => Anwendung auswählen, Ok
4. Du bekommst eine Vorlage "Unit1" und ein Fenster "Form1", dazu einen "Objektinspektor"
- In Form1 kannst Du jetzt Buttons usw. anlegen, deren Eigenschaften im Objektinstpektor verändern, mach das später.
- Das Hauptprogramm existiert ebenfalls bereits, aber Du siehst es nicht, machen wir später.
5. Speichere das Projekt mit Menu Projekt => Projekt Speichern
- Such Dir ein Verzeichnis
- Nimm als Dateiname "testprogramm.lpi", Speichern
- Es erscheint erneut ein Speichern-Dialog für die "unit1", Speichere sie im gleichen Verzeichnis als "test_gui.pas" ab.
- Du wirst sehen, dass Deine Unit (erste Programmzeile) jetzt "test_gui" heisst.
6. Gehe in das Verzeichnis. Du findest dort mehrere Dateien.
testprogramm.lpi = die Lazarus-Projektdatei, beinhaltet Infos zu Deinem Projekt
testprogramm.lpr = das Hauptprogramm => das kannst Du jetzt auch im Lazarus-Editor öffnen
test_gui.pas = die Unit für die GUI, hier kommen alle Prozeduren zur Behandlung der GUI rein
test_gui.lfm = diese Datei beinhaltet die Infos zu Form1, sprich den angelegten Buttons... und deren Eigenschaften
.. und noch bißchen Kleinkram, den wir nicht anfassen
Wichtig ist, dass Du das Projekt immer mit testprogramm.lpi öffnest, das Hauptprogramm testprogramm.lpr musst Du anfangs eigentlich nicht anfassen. Und Du solltest von Anfang an strukturieren, dass heisst, für die Befehle um die GPIOs anzusprechen machst Du eine neue Unit und packst diese Befehle da rein.
Probier erstmal das Obige aus.