Nabend,
Ich habe folgendes Problem: Ich habe 2 Programme welche zu einem Programm mit zwei forms verbunden werden sollen.
Nun habe ich die Unit des anderen Programms geöffnet und kann es auch bearbeiten, ebenso das Form.
Allerdings gelingt es mir nicht das zweite Fenster zu öffnen.
Wenn ich Unit2 bei Uses oder bei implementation uses hinzufüge gibt es nur einen Fehler: Cant find unit2 used by Unit1.
WIe muss ich vorgehen?
Unit eines anderen Projektes Importieren
Re: Unit eines anderen Projektes Importieren
Ok Problem gelöst wenn auch total umständlich. (copy+paste aller buttons und des textes).
Nun habe ich aber das Problem, dass form1 das hauptform ist und ich zwar form2 öffnen kann, form1 aber nicht schließen.
Daher zwei fragen:
1.Gibt es eine Möglichkeit das hauptformular auszublenden ohne das sich alles schließt sodass ich form2 allein seh?
2.Kann ich es dann wieder mithilfe von form2 öffnen/einblenden?
2.Gibt es eine Möglichkeit das hauptformular zu ändern, also ein drittes form zum Hauptformular zu machen?
Eigentlich sollten die beiden forms gleichberechtigt werden, sodass ich in einem Menü eines der Forms aufrufen kann was aber nicht zutrifft.
Mit Copy paste form 1 in ein neues Projekt übernehmen als form3 funktioniert auch nicht da gibt es immer eine Fehlermeldung.
Nun habe ich aber das Problem, dass form1 das hauptform ist und ich zwar form2 öffnen kann, form1 aber nicht schließen.
Daher zwei fragen:
1.Gibt es eine Möglichkeit das hauptformular auszublenden ohne das sich alles schließt sodass ich form2 allein seh?
2.Kann ich es dann wieder mithilfe von form2 öffnen/einblenden?
2.Gibt es eine Möglichkeit das hauptformular zu ändern, also ein drittes form zum Hauptformular zu machen?
Eigentlich sollten die beiden forms gleichberechtigt werden, sodass ich in einem Menü eines der Forms aufrufen kann was aber nicht zutrifft.
Mit Copy paste form 1 in ein neues Projekt übernehmen als form3 funktioniert auch nicht da gibt es immer eine Fehlermeldung.
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: Unit eines anderen Projektes Importieren
Ohne zu testen:ibola hat geschrieben: 1.Gibt es eine Möglichkeit das hauptformular auszublenden ohne das sich alles schließt sodass ich form2 allein seh?
2.Kann ich es dann wieder mithilfe von form2 öffnen/einblenden?
3.Gibt es eine Möglichkeit das hauptformular zu ändern, also ein drittes form zum Hauptformular zu machen?
1. Form1.Visible := False
2. Form1.Visible := True oder Form1.Show. In der "uses" Sektion der Unit von Form2 muss natürlich fir Unit von Form1 referenziert werden, damit Form2 Form1 auch sehen kann
3. Was meinst Du mit Hauptformular ? Ein Projekt kann viele Fenster haben und die kann man zeigen oder verstecken. Ich glaube bei einem davon macht beendet das "Close" das Programm, aber ansonsten sind sie ziemlich gleichberechtigt.
-Michael
-
- Beiträge: 770
- Registriert: Sa 21. Feb 2009, 13:46
- OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2)
- CPU-Target: 32Bit
Re: Unit eines anderen Projektes Importieren
1. Nein, schließt du die Form ist sie erstmal weg und da sie die hauptform ist müssten die anderen auch geschlossen werden (2teres kann vlt umgehen werden...)
Aber du musst sie nicht schließen Verstecken reicht, dazu entweder Form1.Visible := False; oder
2. Siehe mschnell.
3. Das Hauptformular (es heißt glaub ich auch so) ist das Formular welches als erstes initialisiert wird...
Also in der .lpr als erstes erscheint....
Aber du musst sie nicht schließen Verstecken reicht, dazu entweder Form1.Visible := False; oder
Code: Alles auswählen
Form1.Hide;
3. Das Hauptformular (es heißt glaub ich auch so) ist das Formular welches als erstes initialisiert wird...
Also in der .lpr als erstes erscheint....
Code: Alles auswählen
Application.Initialize;
Application.CreateForm(TForm1, Form1); //<--- HAUPTFOMULAR
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
Application.Run;
Code: Alles auswählen
Signatur := nil;