![]() |
VCL DesignTime Package Form keine Controls
Ein schönes Wochenende allen.
Ich hätte ja die Suchfunktion benutzt aber leider funktioniert diese nicht:
Code:
z.B. google site:delphipraxis.net irgendwas hat mit auch nicht geholfen. Ebenso der Rest des Internets :lol:, oder Ich bin zu dumm zum suchen.
connection to localhost:3312 failed (errno=111, msg=Connection refused)
Ich versuche gerade uniGUI Forms in ein Package auszulagen. Was mit einer einschränkung funktioniert. Also habe ich getestet ob diese Einschränkung auch die Normale VCL betrifft und dem ist so. Volgende Situation: Ich habe ein DesignTime-Package in der sich 2 Units befinden: testForm.pas und testRegister.pas Testfrom.pas enthält eine von TForm abgeleitetet Form auf der ich ein TEdit platziert habe. Sonst nichts. testRegister.pas enthält:
Delphi-Quellcode:
Das Package habe ich erzeugt und installiert.
unit testRegister;
interface uses System.SysUtils, System.Classes, DesignIntf, DesignInterfaces, DesignEditors; procedure Register; implementation uses testForm; procedure Register; begin RegisterCustomModule(TTestForm, TCustomModule); end; end. In meiner VCL-Anwendung habe ich in der Uses-Klausel testForm eingebunden. Und diese Form davon abgeleitet:
Delphi-Quellcode:
TPTForm = class(TTestForm)
In der DFM File habe ich in der 1. Zeile 'object' durch 'inherited' ersetzt.
Delphi-Quellcode:
Wenn Ich die Anwendung starte sehe ich das TEdit.
package PTest;
{$R *.res} {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} {$ALIGN 8} {$ASSERTIONS ON} {$BOOLEVAL OFF} {$DEBUGINFO OFF} {$EXTENDEDSYNTAX ON} {$IMPORTEDDATA ON} {$IOCHECKS ON} {$LOCALSYMBOLS ON} {$LONGSTRINGS ON} {$OPENSTRINGS ON} {$OPTIMIZATION OFF} {$OVERFLOWCHECKS ON} {$RANGECHECKS ON} {$REFERENCEINFO ON} {$SAFEDIVIDE OFF} {$STACKFRAMES ON} {$TYPEDADDRESS OFF} {$VARSTRINGCHECKS ON} {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} {$DEFINE DEBUG} {$ENDIF IMPLICITBUILDING} {$DESIGNONLY} {$IMPLICITBUILD ON} requires rtl, designide, vcl, dclstd; contains testForm in 'testForm.pas' {TestForm}, testRegister in 'testRegister.pas'; end. Problem: In der IDE nicht. Als wenn es Edit1 nicht gibt. Im Code kann ich Edit1 verwenden. Wenn ich die beiden Forms im selben Projekt habe geht es. Der Objektablage hinzuzufügen ändert auch nichts. Embarcadero® Delphi 11 Version 28.0.48361.3236 Jemand eine Idee? |
AW: VCL DesignTime Package Form keine Controls
Gerade noch mal in Delphi 12.3 getestet. Ändert nichts.
|
AW: VCL DesignTime Package Form keine Controls
Zitat:
Durch das inherited werden auch die Position usw. übernommen, bis du dem Edit im abgeleiteten Formular eigene Werte gibst. (Du kannst die Werte wie Edit1.Left aus der .dfm auch wieder löschen, dann werden wieder die aus der Elternform genommen.) Mit Packages habe ich das noch nie versucht, aber so ist das normale Verhalten. |
AW: VCL DesignTime Package Form keine Controls
Ich habe dir Form zur Ojektablage hinzugefügt und Vererbt in meine TestApp hinzugefügt. Es ist das selbe verhalten.
Am Wochenende habe ich das Package in 2 aufgeteilt, einmal DesignTime und einmal Runtime. Verhalten hat sich nicht geändert, was aber zu erwarten war. Wenn ich das DesignTime Package deinstalliere und die App Öffne, dann sehe ich die geerbten Controls. Dann weiß ich aber, dass zusätzlich property nicht im Objektinspektor angezeigt werden. |
AW: VCL DesignTime Package Form keine Controls
Ich habe folgenden Beitrag gefunden:
![]() Dieser befasst sich mit etwas ähnlichen, hat mir aber auch nicht geholfen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:37 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