Einzelnen Beitrag anzeigen

HJay

Registriert seit: 7. Dez 2009
172 Beiträge
 
Delphi XE7 Enterprise
 
#7

Re: TButton mit zwei Captions und unterschiedlichem Font

  Alt 16. Dez 2009, 20:28
Sehr interessantes Thema! Ich versuche mich gerade in Vererbung und Objekterzeugung einzuarbeiten und bin auch an einer Lösung interessiert.

Erste Idee wäre gewesen:

Delphi-Quellcode:
TMyButton = class(TButton)
protected
  procedure Paint(var Message: TMessage); message WM_PAINT;
public
  UpperLine : String;
  LowerLine : String;
end;

procedure TMyButton.Paint(var Message: TMessage);
begin
  Canvas.TextOut(0, 0, UpperLine); // Canvas gibt es aber leider nicht...
  Canvas.TextOut(0, 12, LowerLine);
end;
1) Würde das funktionieren mit WM_PAINT?

2) Nur leider hat TButton kein Canvas. Kann man mit dem "Handle" irgendwie auf die Fläche des Buttons zeichnen/schreiben? Falls ja, wie geht das?

3) Oder noch anders: Kann man irgendwie auf elegante Art ein Canvas in der Methode "nachrüsten", also bei Create erzeugen und als TCanvas zur Verfügung stellen?

Ich bin gespannt!
  Mit Zitat antworten Zitat