Christian hat geschrieben:100% Ack @ Theo.
Es ist zwar etwas bitter die Leute von Delphi zu übernehmen die es programmieren nennen 5 Komponenten auf ein Form zu ziehen und zu verknüpfen aber es existiert soviel guter Delphi code da draussen das eine hohe Delphi Kompatibilität dem projekt wirklich zu groooßer popularitär verhelfen kann.
Es gibt ja noch den Unterschied zwischen Delphi und Delphi, also zwischen der Sprache und der VCL. In wiefern der FPC im Delphi-Mode mit Delphi-code klar kommt weiß ich nicht (nie wirklich getestet). Das Konvertieren von Delphi-Code nach FreePascal sollte sich von der Sprache her als nicht sehr schwierig darstellen (natürlich wird das umso aufwändiger, je komplexer das Projekt ist). Das Problem, das sich mir hier in den Weg stellt ist, dass die LCL ein vollwertiger Ersatz für die Delphi VCL sein soll/will (auch wenn ein paar Komponenten mehr/weiniger vorhanden sind). Mehr aber auch nicht.
Wenn wir Lazarus User in der Delphi-Community wildern möchten, müssen wir ganz klar einen Ersatz für die VCL bereitstellen. Und wenn dieser Ersatz mit der VCL nicht
]hunterprozentig Kompatibel ist, werden zumindest diejenigen, die alte Projekte mit Lazarus erstellen wollen, nicht lange bleiben.
theo hat geschrieben:Aber zusätzliche Properties und Features sind natürlich möglich.
In dem konkreten Fall des OnChange bei TRadioGroup dürfte das mehr oder weniger sinnlos sein. Auch wenn es die Kompabiliät zur VCL nicht ändert, ist es höchstens dazu geeignet Verwirrung zu verhindern (so wie in meinem Fall) oder im Gegenteil zu stiften. Delphi-User haben in ihren HIlfedateien folgendes stehen:
Delphi 7 Personal HIlfe hat geschrieben:- Der Benutzer wählt durch Drücken einer Pfeiltaste ein Element in einem Gitter, einem Gliederungsdiagramm, einer Liste oder einem Kombinationsfeld aus.
- [...]
- Der Wert der Eigenschaft Checked eines Kontrollfeldes wird geändert.
d.h. er weiß nicht, ob OnClick wie gewohnt arbeitet, da ein OnChange vorhanden ist. Der Name indiziert bei OnClick einen Klick, dem aber auch etwas ganz anderes vorausgegangen sein kann. OnChange ist dagegen klar (Änderung).
Den zweiten Punkt habe ich direkt mit zitiert, da mir aufgefallen ist, dass TCheckBox und TRadioButton ein OnChange-Event besitzen. Jetzt weiß ich nicht (wie oben beschrieben) nicht, ob OnClick Delphi-mäßig funktioniert oder ein Klick ist. Das dürfte sich bei diesen beiden zwar mehr oder weniger erübrigen aber in der VCL von Delphi 7 sind diese beiden Ereignisse definitiv nicht vorhanden.
MfG Socke