![]() |
Objekterstellung zur Laufzeit
...Guten Abend :-D
ich benutze die Komponente XPMenu. - da bekanntlicherweise D2005-D2007 einfriert, wenn man das Editorfenster schließt und man die Komponente auf der Form hat ( kein Scherz.. gibt es sogar Info hier im Forum ) muß es zur Laufzeit eingebunden werden. ...soweit auch kein Problem.
Delphi-Quellcode:
...allerdings nur für FMain.
XPMenu1:= TXPMenu.Create(FMain);
XPMenu1.UseSystemColors:= False; XPMenu1.UseDimColor:= True; XPMenu1.IconBackColor:= clMaroon; XPMenu1.Gradient:= True; XPMenu1.SelectColor:= clMaroon; XPMenu1.SelectBorderColor:= clMaroon; XPMenu1.XPContainers:= [xccForm, xccPanel]; XPMenu1.XPControls:= [xcMainMenu,xcPopupMenu]; XPMenu1.AutoDetect:= True; XPMenu1.Active:= True; ...wie kann ich das auf alle Formulare erweitern ? ...oder muß ich für jede Form eine Instanz erstellen und am Ende wieder freigeben ? PS: an die Hilfe von D2007 muß ich mich erst gewöhnen... :oops: Danke... |
Re: Objekterstellung zur Laufzeit
Zitat:
Zitat:
Zitat:
|
Re: Objekterstellung zur Laufzeit
Danke für die schnelle Reaktion...
...das das mit dem FMain zusammenhängt war mir klar. Das Create verlangt AOwner: TComponent :gruebel: Zitat:
Zitat:
...alle anderen werden von dort Modal geöffnet. PS: die Hilfe zu Formularinstanzen bezieht sich nur auf dynamische Erzeugung von Formularen :( ...für Euch ist das einfach... ich habe da noch Defizite :oops: |
Re: Objekterstellung zur Laufzeit
... kann mich bitte jemand in die Richtung schubsen... :wink:
... das mit der Formularinstanz verstehe ich nicht :oops: ... ich steh auf dem Schlauch :oops: Danke... |
Re: Objekterstellung zur Laufzeit
Delphi-Quellcode:
XPMenu1:= TXPMenu.Create(<Formularinstanz>);
|
Re: Objekterstellung zur Laufzeit
... ja und das verstehe ich nicht.
was ist die Formularinstanz aller Formulare ? TForm ist ja nur die übergeordnete Klasse... ...das ist warscheinlich so einfach :oops: :?: gibt es überhaupt eine übrgeordnete Formularinstanz für alle ? :?: sollte ich für jedes FormularXPMenu1:= TXPMenu.Create(FormularName);schreiben |
Re: Objekterstellung zur Laufzeit
Grundlagen OOP:
TForm1: Klasse Von dieser Klasse kann man mehrere Instanzen erzeugen. Standardmässig heißt die Instanz, die automatisch vom Formulardesigner erzeugt wird wie die Klasse ohne das T; also TForm1 -> Form1 Also kann es keine Formularinstanz aller Formulare geben. |
Re: Objekterstellung zur Laufzeit
Zitat:
...also für jedes Formular eine Intanz von XPMeu erzeugen... Danke... :hi: |
Re: Objekterstellung zur Laufzeit
Oder eine eigene Basisklasse/Class-Helper für TForm schreiben, in der die Erzeugung des Menüs erfolgt.
|
Re: Objekterstellung zur Laufzeit
Dumme Frage:
Warum benutzt Du das XPMenu mit D2007? Meines Wissens nach braucht man das nicht mehr, weil D2007 Menus im XP-Style erstellt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:33 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 by Thomas Breitkreuz