[gelöst] Neue Units in Hauprtunit einbinden

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
michaschwartz
Beiträge: 14
Registriert: Do 22. Mai 2014, 13:03

[gelöst] Neue Units in Hauprtunit einbinden

Beitrag von michaschwartz »

Hallo,

(Lazarusversion 1.2.4, Windows7 64bit)
nachdem mir hier klar gemacht worden ist, dass man üblicherweise nicht mit mehreren autonomen Programmen
an einem Projekt arbeitete, versuche ich nun, bereits fertig erstellte Programmteile meinem Hauptprojekt hinzuzufügen.
Ich bin so vorgegangen:
Projektinspektor / hinzufügen / Dateien hinzufügen / Unterprogramm.pas und bestätigen.
In meinem Projekt habe ich nun den Quellcode und die Form zur Verfügung und kann alles normal bearbeiten.
aber sobald ich versuche auf die neuen Unit zuzugreifen, z.B. mit einem Form2.show
laufe ich reproduzierbar immer auf den selben Fehler:
SIGSEV in der Datei /include/customform/inc in Zeile 2138.
und dort steht
procedure TCustomForm.Show;
begin
Visible := True;
BringToFront;
end;
Ein Zugriff auf die neune Unit ist mir so nicht möglich.
Was mache ich falsch?

LG

Michael
Zuletzt geändert von michaschwartz am Mi 8. Okt 2014, 13:34, insgesamt 1-mal geändert.

Benutzeravatar
theo
Beiträge: 10865
Registriert: Mo 11. Sep 2006, 19:01

Re: Neue Units in Hauprtunit einbinden

Beitrag von theo »

Schau dir deine *.lpr Datei an.
Analog zu
Application.CreateForm(TForm1, Form1);
muss das Formular der anderen Unit auch erst "created" werden.
Das kann man auch sonstwo im Code "von Hand" machen.

michaschwartz
Beiträge: 14
Registriert: Do 22. Mai 2014, 13:03

Re: Neue Units in Hauprtunit einbinden

Beitrag von michaschwartz »

ich habe jetzt in die Hauptunit.lpr
die Zeile Application.CreateForm(TForm2, Form2);
eingefügt. Der Aufruf funktioniert jetzt wie gewünscht.
War mein Vorgehen ansonsten korrekt, und muss ich noch weitere Einträge händisch nachtragen?

Michael

Benutzeravatar
theo
Beiträge: 10865
Registriert: Mo 11. Sep 2006, 19:01

Re: Neue Units in Hauprtunit einbinden

Beitrag von theo »

michaschwartz hat geschrieben: War mein Vorgehen ansonsten korrekt, und muss ich noch weitere Einträge händisch nachtragen?
Wenn's läuft war es korrekt. :wink:

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2805
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Neue Units in Hauprtunit einbinden

Beitrag von m.fuchs »

Wenn du noch mehr Formulare hast, dann solltest du die da auch einfügen. Ansonsten reicht das.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Mathias
Beiträge: 6904
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Neue Units in Hauprtunit einbinden

Beitrag von Mathias »

ich habe jetzt in die Hauptunit.lpr
die Zeile Application.CreateForm(TForm2, Form2);
eingefügt. Der Aufruf funktioniert jetzt wie gewünscht.
Gibt es dafür nicht etwas, welches dies automatisch macht.

Wen man ein neues Formular erzeugt, dann wird der Eintrag auch automatisch gemacht.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Antworten