So sieht es aus :
Delphi-Quellcode:
procedure TForm1.DoOnEnter(Sender: TObject);
begin
if (Sender = btn1) then begin Btn1.Glyph := nil;
ImageList1.GetBitmap(1, btn1.Glyph); end
else if (Sender = btn2) then begin Btn2.Glyph := nil;
ImageList1.GetBitmap(3, btn2.Glyph);end
else if (Sender = btn3) then begin Btn3.Glyph := nil;
ImageList1.GetBitmap(5, btn3.Glyph);end;
end;
procedure TForm1.DoOnLeave(Sender: TObject);
begin
//(Sender as TBitBtn).Font.Style := (Sender as TBitBtn).Font.Style - [fsBold];
if (Sender <> btn1) then begin Btn1.Glyph := nil;
ImageList1.GetBitmap(0, btn1.Glyph);end
else if (Sender <> btn2) then begin Btn2.Glyph := nil;
ImageList1.GetBitmap(2, btn2.Glyph); end
else if (Sender <> btn3) then begin Btn3.Glyph := nil;
ImageList1.GetBitmap(4, btn3.Glyph);end;
end;
Es funktioniert nicht schnell und das Button bekommt nicht sofort ein neues Bild
OnMouseLeave sondern nur nach hin und her den Cursor auf andere BitButtons bewegen !
Das ganze funktioniert mit einer Verzögerung
Btn3 wechselt sein Bild überhaupt nicht !