Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Lazarus (IDE) (https://www.delphipraxis.net/81-lazarus-ide/)
-   -   Formularelemente nil (https://www.delphipraxis.net/207034-formularelemente-nil.html)

Teesäufer 19. Feb 2021 22:31

AW: Formularelemente nil
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1483374)
Zitat:

Zitat von himitsu (Beitrag 1483370)
Wie gesagt, das daran, dass z.B. das
Delphi-Quellcode:
{$R *.dfm}
in der PAS fehlt, kann es nicht liegen, denn dann

Bin mir nicht sicher, ob das auch für Lazarus gilt...

Das wars. Super, danke! Darauf wäre ich nie gekommen, da ich davon ausging, dass es sich um einen Kommentar handelte ...

himitsu 19. Feb 2021 22:40

AW: Formularelemente nil
 
OMG, ich war ja eher davon ausgegangen, dass dieses uralte Verhalten der VCL so auch im Lazarus übernommen wurde. :shock:

Tja, ohne Fehlerprüfung passieren die komischsten Dinge. :roll:

Redeemer 20. Feb 2021 10:17

AW: Formularelemente nil
 
Zitat:

Zitat von Teesäufer (Beitrag 1483375)
Zitat:

Zitat von Uwe Raabe (Beitrag 1483374)
Zitat:

Zitat von himitsu (Beitrag 1483370)
Wie gesagt, das daran, dass z.B. das
Delphi-Quellcode:
{$R *.dfm}
in der PAS fehlt, kann es nicht liegen, denn dann

Bin mir nicht sicher, ob das auch für Lazarus gilt...

Das wars. Super, danke! Darauf wäre ich nie gekommen, da ich davon ausging, dass es sich um einen Kommentar handelte ...

„Kommentare“ mit Dollarzeichen am Anfang heißen Compiler-Direktiven und sind wichtig.

himitsu 20. Feb 2021 10:33

AW: Formularelemente nil
 
Auch wenn es selten vorkommt, denn Programmier sind faul und schreiben ungern zuviel, aber
Delphi-Quellcode:
(*$...*)
ist das gleiche wie
Delphi-Quellcode:
{$...}
.... nicht dass sich wer wundert.

https://www.freepascal.org/docs-html/prog/progch1.html
http://docwiki.embarcadero.com/RADSt...ktiven_-_Index



Und auch Kommentare mit // und /// sind bissl was Anderes. (für den Compiler ist // oder mehr zwar das "gleiche" .... aber gewisse Parser behandeln es anders)

Ich glaub für Lazarus gab es auch sowas, nur auf die Schnelle fand ich bloß das
https://wiki.freepascal.org/Lazarus_...ntation_Editor
Google zeigte für 'ne Sekunde im AutoComplete etwas an, wonach es aussah, als wenn jemand mal hier im Forum nach dieser Sache fragte. (hab's aber nicht wiedergefunden)

http://docwiki.embarcadero.com/RADSt...or_Delphi_Code
http://docwiki.embarcadero.com/RADSt...ation_Comments



Und grade bei FPC/Lazarus mußt du teilweise aufpassen, denn der Compiler kann in verschiedenen Modi arbeiten, wo er dann unterschiedlich reagiert.
https://www.freepascal.org/docs-html...3-1140001.3.21
https://www.freepascal.org/docs-html/prog/progse74.html



Da scheinbar Anfänger und so und außerdem "niemand hat vor Werbung zu machen" :roll:
https://www.embarcadero.com/de/products/delphi/starter

Teesäufer 20. Feb 2021 23:27

AW: Formularelemente nil
 
Zitat:

Zitat von Redeemer (Beitrag 1483382)
„Kommentare“ mit Dollarzeichen am Anfang heißen Compiler-Direktiven und sind wichtig.

Das habe ich inzwischen auch gemerkt :)

JamesTKirk 17. Mär 2021 09:18

AW: Formularelemente nil
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1483374)
Zitat:

Zitat von himitsu (Beitrag 1483370)
Wie gesagt, das daran, dass z.B. das
Delphi-Quellcode:
{$R *.dfm}
in der PAS fehlt, kann es nicht liegen, denn dann

Bin mir nicht sicher, ob das auch für Lazarus gilt...

Sollte es eigentlich, zumindest wenn man das Projekt frisch erstellt hat:

Code:
[Debuggerausnahmen-Nachricht]

Projekt project1 hat Exception-Klasse »EResNotFound« ausgelöst mit der Meldung:
Form resource TForm1 not found. For resourceless forms CreateNew constructor must be used. See the global variable RequireDerivedFormResource.

 In Datei '.\include\customform.inc' in Zeile 2072


[Diesen Ausnahmetyp übergehen]

[Break] [Continue]
Wenn allerdings in der Hauptprojektdatei eine bestimmte Zuweisung fehlt, dann ist diese Prüfung abgeschalten:

Delphi-Quellcode:
begin
  RequireDerivedFormResource := True; // <--- diese hier
  Application.Scaled := True;
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
Der Hintergrund hierzu ist historisch und liegt daran, das FPC früher keine {$R ...}-Resourcen unterstützt hat und Lazarus stattdessen Include-Dateien genutzt hat. Um die weitere Kompatibilität zu solchen Projekten zu gewährleisten wurde diese Variable eingeführt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:44 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz