Einzelnen Beitrag anzeigen

Robert_G
(Gast)

n/a Beiträge
 
#5

Re: Datenmodule, die nicht von TDataModule kommen

  Alt 26. Jun 2005, 11:56
Das Problem bei sämtlichen visual designing Krams in D32 ist, dass du /immer/ über das Object repo ableiten /musst/.
Du erzeugst dir also ein Package.
Dein TBaseModule bekommst über das DataModule template. Nun erzeugst du dein TChildModule über FileßNew\Others suchst dir den Reiter, der so heißt wie dein Package, wählst TBaseModule aus und [OK].
Du kannst jetzt beide visuell designen.
Jetzt noch eine kleine Unit in der du das Registrieren in die IDE übernimmst:
Delphi-Quellcode:
interface

uses
   Classes;

procedure Register;

implementation
uses
   uBaseModule,uChildModule;
procedure Register;
begin
   RegisterComponents('DP Samples',[TBaseModule, TChildModule]);
end;
Auf die Art kannst du dir visuell eine Komponente erstellen auf der du andere Komponenten platzieren und bearbeiten kannst.

DataModule <> Datenbankprogrammierung. Sehe es ähnlich als ob du in .Net auf new Component klickst.
Dummerweise sind alle Komponenten auf dem DataModule published.
Wobei das durch das komische Konzept von DFM-Resourcen anstatt generierten Code wie in .Net verursacht wird.
Willst du das verstecken, musst du noch einen Wrapper darum schreiben.

Ich hoffe ich habe verstanden, was du vorhattest...

btw:
Lösche diese DAU-Variablen aus den generierten Units raus. Die verhindern, dass man damit auch nur irgendwas brauchbares anstellen kann.

@alzi
Es ist a) größer die Einstellungen in eine DFM zu packen und b) ist es langsamer wenn die ganze Initialisierung erst die DFM auslesen muss. (Und das für /jeden/ Vorfahren!) Ich denke das störte ihn.
  Mit Zitat antworten Zitat