Vorteilhafter ist es gleich mit
TFontRecall oder auch
TRecall zu arbeiten, dann kann man völlig frei am Font ändern was man möchte und am Ende wird es wieder auf die Originalwerte zurückgesetzt
Delphi-Quellcode:
procedure THauptformular.ToolBar1CustomDraw(Sender: TToolBar;
const ARect: TRect;
var DefaultDraw: Boolean);
var
LFontRecall : TFontRecall;
begin
LFontRecall := TFontRecall.Create( Toolbar1.Canvas.Font );
try
for L := 0
to MainMenu1.Items.Count - 1
do
begin
if MouseInRect(
tp.X,
tp.y, ar.Left-5, r.Top, ar.Right-5, ar.Bottom)
then
begin
Toolbar1.Canvas.Font.Color := clBlack;
DrawText (Toolbar1.Canvas.Handle, Pchar (s), -1, r, DT_Left + DT_VCenter);
break;
end;
end;
finally
// die originalen Font-Eigenscshaften werden zurückgeschrieben
LFontRecall.Free;
end;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)