Thema: Delphi SpeedButton - kein Bild?

Einzelnen Beitrag anzeigen

Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#10

Re: SpeedButton - kein Bild?

  Alt 30. Aug 2006, 14:31
also ich kann sowieso kaum glauben, was ich hier sehe:

Delphi-Quellcode:
    SpeedButton1.Glyph := nil;
    SpeedButton1.Glyph.Width := ICO.Width;
    SpeedButton1.Glyph.Height := ICO.Height;
    SpeedButton1.Glyph.Canvas.Draw(0, 0, ICO);
Man nillt einen Instanzenzeiger und greift dann darauf zu - halte ich für sehr gefährlich.
Lieber so:

Delphi-Quellcode:
    SpeedButton1.Glyph := nil;
    SpeedButton1.Glyph := TBitmap.Create;
    SpeedButton1.Glyph.Width := ICO.Width;
    SpeedButton1.Glyph.Height := ICO.Height;
    SpeedButton1.Glyph.Canvas.Draw(0, 0, ICO);
Damit hat man definitiv ein neues Bild als Glyph erstellt, und es sollte auch keine Bildreste geben, sobald man einmal Invlaidate/Refresh/Repaint aufgerufen hat.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat