AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Eine Komponente aus mehreren Einzelteilen zusammensetzen
Thema durchsuchen
Ansicht
Themen-Optionen

Eine Komponente aus mehreren Einzelteilen zusammensetzen

Ein Thema von lizardking · begonnen am 22. Apr 2006 · letzter Beitrag vom 5. Mai 2006
 
lizardking

Registriert seit: 2. Sep 2005
76 Beiträge
 
Delphi 7 Enterprise
 
#1

Eine Komponente aus mehreren Einzelteilen zusammensetzen

  Alt 22. Apr 2006, 23:27
Hallo zusammen,

stehe momentan vor einem kleinen Problemchen. Und zwar will ich eine Komponente entwickeln, die wiederum aus mehreren kleinen Komponenten besteht und sich nach aussen hin verhaelt wie die Hauptkomponente. Mann... was ein ein Satz ;-) Ganz konkret, damit man sich vorstellen kann, was ich meine :

Ich moechte eine Art TVirtualSearchStringTree entwickeln. Dieser soll genau wie ein normaler VST angesprochen werden koennen, aber noch eine Zusatzfunktionalitaet bekommen. Es soll ein Panel da sein, darin ein VST mit Align auf alClient und ein weiteres Panel mit Align auf alBottom, dass ein Edit-Feld fuer die Suche hat.

Folgende Loesungsansaetze habe ich :

1. Komponente von TPanel ableiten, die den VST quasi als Property hat. Die Loesung finde ich aber recht unattraktiv, da ich dann in meinem kompletten Projekt die Codezeilen mit den Zugriffen aendern muesste. Ich muesste ja jeden einzelnen Zugriff a la "VST.GetNodeData" umaendern in "MeineCompo.VST.GetNodeData".

2. Komponente von TVirtualStringTree ableiten. Dann muesste ich aber wahrscheinlich komplett alle Paint-Methoden neu implementieren, oder ? Also falls die Suchfunktion aktiv ist, den Stringtree unten 20 Pixel kuerzen und da von Hand das Editfeld zeichnen etc...

3. Komponente von TPanel ableiten und alle Funktionen vom VST quasi durch sowas wie Proxy-Funktionen implementieren. Ungefaehr so :

Delphi-Quellcode:
function TBaseVirtualTree.GetNodeData(Node: PVirtualNode): Pointer;
begin
  result := FVirtualStringTree.GetNodeData(Node: PVIrtualNode);
end;

Gibt es da keine einfachere Loesung ?

Fuer Anregungen und Hilfe bin ich dankbar.

Gruss, Lizzy
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:37 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