AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

neuer Komponente / Parent width

Offene Frage von "theomega"
Ein Thema von theomega · begonnen am 23. Jul 2004 · letzter Beitrag vom 23. Jul 2004
Antwort Antwort
Benutzerbild von theomega
theomega

Registriert seit: 18. Jun 2002
684 Beiträge
 
#1

neuer Komponente / Parent width

  Alt 23. Jul 2004, 10:35
Hallo Leute,
ich versuche einen eigenen Komponenten zu erstellen, den ich von TPaintBox abgeleitet habe. In die Paintbox werden verschiedene Dinge gezeichnet, die meisten propertional zur Breite der Paintbox. Dazu sind recht komplexe Berechnungen nötig, die ich nicht bei jedem paint machen will sondern nur einmal. Jetzt muß ich aber die Brechnungsfunktion aufrufen, wenn sich width verändert hat.
Nur wie mach ich dass. Erst habe ich gedacht, ich overrite SetWidth, aber das geht nicht, weil er behauptet, das dies in der Parent-Klasse nicht enthalten ist (stimmt irgendwie auch, ist in der parent-klasse der parent-klasse der parent-klasse enthalten [TComponent]).

Weiß jemand wie ich das machen kann?

Grüße und Danke
TO
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#2

Re: neuer Komponente / Parent width

  Alt 23. Jul 2004, 10:38
mach das doch einfach im OnResize-Ereignis der Paintbox!?
Danke
Tom
  Mit Zitat antworten Zitat
Benutzerbild von theomega
theomega

Registriert seit: 18. Jun 2002
684 Beiträge
 
#3

Re: neuer Komponente / Parent width

  Alt 23. Jul 2004, 10:40
und wie benutze ich das in meinem Komponenten?
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#4

Re: neuer Komponente / Parent width

  Alt 23. Jul 2004, 10:51
hm, so weit ich weiss, müsstest Du dann Deiner Komponente einfach noch diese Propertie zuweisen
Danke
Tom
  Mit Zitat antworten Zitat
TStringlist

Registriert seit: 1. Dez 2003
360 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: neuer Komponente / Parent width

  Alt 23. Jul 2004, 14:13
SetWidth? Meinst du damit etwa eine (Set-)Property-Routine? Üblich ist das aber nicht, dass man die auch overrided. Eventuell, weil die normalerweise unter private deklariert und damit in irgendeiner nächsten Unit ohnehin nicht mehr bekannt sind?

Was du stattdessen aber overriden kannst, ist die Resize-Methode selbst. Die stammt von TControl ab und von der wird dann überhaupt erst immer dieser OnResize gepointete Eventhandler aufgerufen (falls definiert) ...also am Ende das 'inherited' nicht vergessen.

Das wäre wohl auch dann der richtige Weg, wenn du da eine eigene Komponente selbst wieder für die Palette draus entwickeln wolltest.
MfG (& Thx ggf.)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 14:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf