Registriert seit: 1. Dez 2003
360 Beiträge
Turbo Delphi für Win32
|
Re: Eigene Button Komponente
8. Mai 2007, 12:38
Die eigentliche "Picture"-Property hat da im Constructor und Destructor nichts verloren (...weil Properties natürlich als solches nicht createt bzw. gefreet zu werden brauchen). Außerdem fehlt im Destructor noch ein "inherited" als letzte Zeile.
Btw, die <property canvas>-Zeile im Deklarationsteil deiner Componente kannst Du dir sparen. Auf das TCustomControl-Canvas kannst Du auch ohne die einfach so zugreifen.
..und im Übrigen würde ich auch gleich den "PaintHandler" überschreiben, anstatt das Repaint. Imo hast Du nur mit einem überschriebenen "PaintHandler" nachher die volle Kontrolle über das, was dann bei einer jeden ankommenden wm_paint-Message zur Darstellung deines Buttons (und seiner Zustände) so alles zusammengemalt werden muss, als da wäre z.B.: Grundfläche initialisieren, die unterschiedlichen Rahmen (ob gedrückt o. nicht), eine Caption oder (wie bei dir) ein Picture, einen Focusring...
MfG (& Thx ggf.)
|