![]() |
VCL unit in FMX DataModule
Hallo,
ich habe eine Firemonkey-Anwendung (Delphi Seattle) mit einem TDataModule. In diesem Modul befinden sich eine FDConnection und zwei FDQueries. Ich habe mein gesamtes Projekt in einen anderen Ordner kopiert. Nachdem ich das Projekt neu mit Delphi Seattle geöffnet und die Unit mit dem Datenmodul geöffnet habe, hat mir Delphi die Unit FireDAC.VCLUI.Wait in den Interface-Teil eingebunden. FireDAC.FMXUI.Wait war bereits vorhanden. Beim Versuch, das Projekt zu bauen, kommt der Fehler, dass FireDAC.VCLUI.Wait nicht gefunden wird. Wenn ich die Datei in der IDE schließe und diese Unit per Texteditor rausschmeiße, dann kann ich wieder alles bauen. Aber sobald die Datei geöffnet ist, packt Delphi die Unit wieder rein. Ich habe die Datei schon aus dem Projekt entfernt und wieder hinzugefügt, aber Delphi packt mir die Unit gleich wieder rein. Hat einer von euch eine Idee, wie ich diese Unit dauerhaft rausbekomme, bzw. warum diese Unit immer wieder reinkommt? |
AW: VCL unit in FMX DataModule
Auf was steht denn
![]() |
AW: VCL unit in FMX DataModule
Er scheint zu meinen, dass es sich um eien VCL Projekt handelt
|
AW: VCL unit in FMX DataModule
So sieht ein DataModule aus, wenn es frisch mit FMX erzeugt wurde
Delphi-Quellcode:
Und genau dieses
unit Unit2;
interface uses System.SysUtils, System.Classes; type TDataModule2 = class(TDataModule) private { Private-Deklarationen } public { Public-Deklarationen } end; var DataModule2: TDataModule2; implementation {%CLASSGROUP 'FMX.Controls.TControl'} // <- Das ist entscheidend {$R *.dfm} end.
Delphi-Quellcode:
entscheidet nun darüber, was hier benötigt wird, bzw. woran FireDAC erkennt, welches Framework verwendet wird.
{%CLASSGROUP 'FMX.Controls.TControl'}
Delphi-Quellcode:
Falsch ist z.B.
implementation
{%CLASSGROUP 'FMX.Controls.TControl'} // muss direkt unter implementation stehen
Delphi-Quellcode:
Falsch ist auch
implementation
uses UnitFoo; {%CLASSGROUP 'FMX.Controls.TControl'} // muss direkt unter implementation stehen
Delphi-Quellcode:
Und der
implementation
{ %CLASSGROUP 'FMX.Controls.TControl'} // nicht daran herumfummeln!
Delphi-Quellcode:
entscheidet zusätzlich über den Eintrag
TFDGUIxWaitCursor
Delphi-Quellcode:
welches Unit eingebunden wird.
TFDGUIxWaitCursor.Provider
|
AW: VCL unit in FMX DataModule
Ihr seid super!
Delphi-Quellcode:
stand zwar drin, aber Rufos Hinweis traf genau ins Schwarze:
{%CLASSGROUP 'FMX.Controls.TControl'}
Zwischen IMPLEMENTATION und CLASSGROUP stand noch was. Das habe ich jetzt nach unten verschoben und schon funktioniert es. Vielen Dank. |
AW: VCL unit in FMX DataModule
Die ClassGroup lässt sich auch bequem im Objektinspektor einstellen, wenn das DataModule selektiert ist. Wird dort trotz existierender ClassGroup-Zeile nichts angezeigt, steht die Zeile an der falschen Stelle.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz