![]() |
TabSet und tsOwnerDraw
Ich hab ein Programm das enthält die Komponente TabSet, und die wirkt mit dem Windows 3.1 Look etwas deplatziert. Also wollte ich das Aussehen aufpeppen und die Tabs unter DrawTabs selbst zeichnen, nur klappt das irgendwie nicht. Inzwischen weiß ich nicht ob das überhaupt geht.
Zuletzt habe ich das Beispiel unten geschrieben, das beim letzten Tab die gesamte Canvas von TabSet löscht. Eigentlich sollte die ganze Fläche danach leer sein. Und siehe da, danach wird noch ein Tab gezeichnet.
Delphi-Quellcode:
Nun stellt sich mir die Frage ob man die Tabs neu zeichnen kann und ich nur etwas übersehe, oder ob das überhaupt nicht geht?
procedure TForm1.FormCreate(Sender: TObject);
var i: Integer; begin TabSet1.Style := tsOwnerDraw; for i := 0 to 5 do TabSet1.Tabs.Add(StringOfChar(Chr(i + 65 ), i + 1)); end; procedure TForm1.TabSet1DrawTab(Sender: TObject; TabCanvas: TCanvas; R: TRect; Index: Integer; Selected: Boolean); begin with TabSet1, TabCanvas do if Index = (FirstIndex + VisibleTabs - 1) then FillRect(ClipRect); end; |
AW: TabSet und tsOwnerDraw
Hallo,
Zitat:
Zitat:
Zitat:
Gruß |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz