Ich habe ein Fensterprogramm geschrieben, das den Resourceneditor nicht verwendet. Die wenigen Fenster erzeuge ich händisch über den Pascal-Programmcode. (Es ist eine Portierung von einem anderen Delphi-Dialekt.) Ich habe, das war vielleicht ein Fehler, mit einem LPI eines Kommandozeilenprogramms gestartet. Ich verwende Win32. Folgendes habe ich schon angefügt, damit es ein Fensterprogramm wird:
- LCL bei Projektinspektor eintragen
- "uses Interfaces" unter "program" im Haupt-Quelltext
- Haken bei GUI Anwendung unter Projekteinstellungen - Compiler - Konfiguration
- mit "Application.Initialize" im Hauptprogrammblock beginnen.
Trotzdem erhalte ich die Laufzeit-Fehlermeldung: Error 1407 Fensterklasse nicht gefunden.
Was muss ich noch ergänzen?
Fensterprogramm ohne Ressourcen
-
- Beiträge: 955
- Registriert: Mi 3. Jun 2020, 07:18
- OS, Lazarus, FPC: L 2.0.8, FPC Trunk, OS Win/Linux
- CPU-Target: Aarch64 bis Z80 ;)
- Wohnort: München
Re: Fensterprogramm ohne Ressourcen
Wenn du ein Formular ohne Verwendung einer Ressource erzeugen möchtest, dann musst du YourForm.CreateNew als Konstruktor verwenden. Du darfst dann also auch nicht Application.CreateForm nutzen.
FPC Compiler Entwickler
-
- Beiträge: 142
- Registriert: Sa 30. Jan 2010, 19:35
- OS, Lazarus, FPC: Linux64, Wiindows32, MacOS, Lazarus 1.8.2
- CPU-Target: xxBit
Re: Fensterprogramm ohne Reshsourcen
Ich habe aber schon Programme geschrieben, bei denen die Mainform selbst erzeugt ist und dann weitere Forms über Resourceneditor genutzt werden. Dabei habe ich im Hauptprogramm nur geschrieben:
Application.Initialize;
Application.CreateForm (TypeOfMyMainForm, MyMainForm)
Das hat immer funktioniert.
Ich werde natürlich auch über File - New - Project - Application eine neue LCL Anwendung starten können, und dann die Resourcenform wieder wegklicken und die Settings entsprechend anpassen, aber das muss ja auch anders gehen.
Application.Initialize;
Application.CreateForm (TypeOfMyMainForm, MyMainForm)
Das hat immer funktioniert.
Ich werde natürlich auch über File - New - Project - Application eine neue LCL Anwendung starten können, und dann die Resourcenform wieder wegklicken und die Settings entsprechend anpassen, aber das muss ja auch anders gehen.
-
- Beiträge: 142
- Registriert: Sa 30. Jan 2010, 19:35
- OS, Lazarus, FPC: Linux64, Wiindows32, MacOS, Lazarus 1.8.2
- CPU-Target: xxBit
Re: Fensterprogramm ohne Ressourcen
Ich habe jetzt einfach eine Dummy-Form erzeugt (Datei - Neues Formular), obwohl ich eigentlich alle Forms händisch via Pas-Datei erzeuge. Jetzt geht es. Vorher konnte er nicht einmal eine Messagebox erzeugen, ohne dass der Fehler auftritt.
-
- Lazarusforum e. V.
- Beiträge: 3178
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: Fensterprogramm ohne Ressourcen
Hast du in der lpr-Datei noch die Zeile RequireDerivedFormResource := True; stehen? Die Zeile wird bei neuen Lazarus-Projekten automatisch eingefügt.
Ggf. kannst du die Variable einfach zu Programmstart auf "False" setzen.
Andererseits sollte auch die von PascalDragon vorgeschlagene Lösung genau so funktionieren.
Ggf. kannst du die Variable einfach zu Programmstart auf "False" setzen.
Andererseits sollte auch die von PascalDragon vorgeschlagene Lösung genau so funktionieren.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein