Autor Beitrag
cherry
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 136

WinXP - Professional
RAD Studio 2009
BeitragVerfasst: Di 13.06.06 07:53 
Hi..

Abgeleitet von TCustomControl...
Ich bin schon fast fertig mit meiner Komponente, jetzt habe ich nur noch ein kleines Problem:

Ich will für die verschiedenen zustände des Buttons je verschiedene Captions, das heisst drei insgesamt.
die erste könnte ich einfach so deklarieren:

ausblenden Delphi-Quelltext
1:
property Caption;					


Dann würde alles so funktionieren wie es sollte, --> Wenn ich die Komponente auf ein Formular ziehe
ist der Standardwert der Caption automatisch = der Name. z.B. EButton1, EButton2 ...

KONKRET:
Wenn ich die Caption propertyS nun selber Programiere, funktionierem diese zwar einwandfrei, jedoch
weiss ich nicht wie den Namen zu übergeben.
Denn wenn ich einen standard Wert im Constructor mitgeben will, sind Variablen "Name" oder "Caption" noch
nicht vorhanden. Wenn ich die LoadProcedure überschreibe, habe ich das Problem, dass die Captions zwar zur Laufzeit erscheinen, jedoch nicht im Objektinspektor zur Entwicklungszeit.

:?: FRAGE : Wie Programmiere ich also selber mehrere Caption Propertys? :?:

_________________
AM I TOO SEXY?
Ist das nur mein Gefühl, oder ist die ganze Welt verrückt geworden!?
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Di 13.06.06 08:09 
Schau Dir mal die Methode AfterConstruction an ;-)

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
cherry Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 136

WinXP - Professional
RAD Studio 2009
BeitragVerfasst: Di 13.06.06 09:02 
funktioniert leider nicht. Denn zu der Zeit ist die Caption auch noch nicht
verfügbar.

Habs jetzt raus, dank DP:

Wenn sich die Caption eines Controls ändert, dann sendet das Control eine Message CM_TEXTCHANGED an sich selbst.
Also einfach die Methode

ausblenden Delphi-Quelltext
1:
procedure CMTextChanged(var Message: TMessage); message CM_TEXTCHANGED;					


neu implementieren und dort auf die Änderung reagieren.

Zitat: xaromz

Das funktioniert dann auch...

Danke trotzdem :wink:

_________________
AM I TOO SEXY?
Ist das nur mein Gefühl, oder ist die ganze Welt verrückt geworden!?