Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TPageControl ableiten als Komponente im Designer (https://www.delphipraxis.net/167837-tpagecontrol-ableiten-als-komponente-im-designer.html)

wicht 20. Apr 2012 22:54

TPageControl ableiten als Komponente im Designer
 
Hi Forum!

Ich hätte da mal eine Frage und schieße einfach mal los.
Über lange Zeit habe ich in meinem streamWriter einige eigene Controls geschrieben. Weil ich zu faul für Komponentenentwicklung war (mittlerweile eine nervige Sache...) habe ich ein paar .pas-Dateien herumliegen, die meine Controls beinhalten - diese Controls werden deshalb nicht im Designer erstellt, sondern immer nur im Code erzeugt. Ich habe mich mal dran versucht, ein Package zu erstellen, und jetzt geht es bei den Ableitungen von TPageControl und TTabSheet los - diese habe ich abgeleitet als TMeinPageControl und TMeinTabSheet.
Wenn ich von meinem abgeleiteten Controls im Designer eine neue Tab-Seite (TMeinTabSheet) erstellen möchte ("Neue Seite" im Kontextmenü auf Control) wird natürlich ein TTabSheet erstellt, kein TMeinTabSheet, und das ist nicht gewünscht, da TMeinTabSheet einige wichtige Funktionen hat.
Ich habe alle .pas-Dateien von Delphi durchsucht, Aufrufe von TTabSheet.Create() werden dort nur einmal gefunden, und das ist nicht die Stelle, wo der Designer es erzeugt. Ist diese "Neue Seite"-Funktion nicht editierbar, weil das in einem Delphi-eigenen Designtime-Package liegt oder so? Habe ich irgend eine andere Möglichkeit, meine eigenen TMeinTabSheets zu erzeugen, damit ich mein Programm ordentlich im Designer entwerfen kann und nicht im Code?

Wäre super, wenn es da eine Lösung für gibt... Ich verzichte deshalb bis jetzt quasi komplett auf den Designer (Das TabControl beinhaltet fast alle anderen Controls auf den Pages), und je mehr GUI-Geschichten dazu kommen, desto mehr nervt es und es wird auch nicht gerade übersichtlicher.. :cry:


Vielen Dank für eventuelle Ratschläge :) !

Bummi 20. Apr 2012 23:10

AW: TPageControl ableiten als Komponente im Designer
 
da InsertPage private deklariert ist und ich keine weiteren Eingriffsmöglichkeiten sehe bin ich pessimistisch.

EDIT:
Faken kann man sicher etwas, eine Setter einer Dummyproperty (MyWishedPageCount), gegf. bekommt man auch ein Event oder Popup im csDesinging zum laufen, wäre an "Neue Seite" vorbei, aber gegf. ein brauchbarer Workaround.

himitsu 21. Apr 2012 01:28

AW: TPageControl ableiten als Komponente im Designer
 
http://wiki.delphigl.com/index.php/T...tenentwicklung

Das "Popupmenü erweitern" ?

Bummi 21. Apr 2012 06:51

AW: TPageControl ableiten als Komponente im Designer
 
@himitsu

:oops: :thumb:

himitsu 21. Apr 2012 11:32

AW: TPageControl ableiten als Komponente im Designer
 
Schäm dich aber nicht. In unserer Firma wurde auch mehrmals dieses Dummy-Property verbaut. :angle:

Bummi 21. Apr 2012 11:57

AW: TPageControl ableiten als Komponente im Designer
 
@himitsu

doch, trotzdem, ich hatte bisher keinen Bedarf für eigene PropertyEditoren bzw. deren Erweiterung. Vor ca. 10 Jahren hatte ich sie mir interessehalber mal zu Gemüte geführt und entschieden dass ich hierfür (bisher) keine Verwendung habe.
Blöd wenn man Aussagen wieder besseres (vergessenes) Wissen trifft...

wicht 22. Apr 2012 21:27

AW: TPageControl ableiten als Komponente im Designer
 
Hi,

vielen Dank für eure Hilfe! Das Problem ist nun beseitigt, ich habe es zuerst mit der Property gemacht, und dann mit dem ComponentEditor. Leider gibt es jetzt das nächste Problem, aber dafür gibt es dann einen neuen Thread.


LG


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:55 Uhr.

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