![]() |
[TSpeedButton] Zur Laufzeit mit einem Glyph versehen
Hallo ihr,
ich habe hier einen SpeedButton und in einem soll etwas nur zur Laufzeit angezeigt werden. Aber irgendwie kriege ich es nicht hin das Icon zur Laufzeit zu setzen:
Delphi-Quellcode:
Dies zeigt keine Wirkung. Auch ein Rumzeichnen auf der Canvas bringt nichts. Wenn ich aber das auf ein TImage zeichne zeigt er Ordnungsgemäß das Logo an.
with TRegistry.Create(KEY_READ) do
try RootKey := HKEY_LOCAL_MACHINE; if OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\vncviewer.exe', false) then begin VNCPath := ReadString(''); sbVNC.Enabled := true; icon := TIcon.Create; try icon.Handle := ExtractIcon(HInstance, PChar(VNCPath), 0); sbVNC.Glyph.Canvas.Draw(0, 0, icon); finally icon.Free; end; end else sbVNC.Enabled := false; finally Free; end; MfG xZise |
Re: [TSpeedButton] Zur Laufzeit mit einem Glyph versehen
Und wenn Du eine Speicherbitmap erstellst, das Icon darauf zeichnest und diese dann dem Glyph per Assign zuordnest?
|
Re: [TSpeedButton] Zur Laufzeit mit einem Glyph versehen
Naja so geht es, aber ob das die beste Möglichkeit ist?
Weil ist „TIcon“ nicht an sich ein Bitmap? MfG xZise |
Re: [TSpeedButton] Zur Laufzeit mit einem Glyph versehen
Prinzipiell schon. Du könntest auch mal ein
Delphi-Quellcode:
versuchen. Was mich ein wenig verwundert: wenn Glyph noch nicht zugewiesen wurde, müsste das Canvas.Draw doch eine AV bringen, oder mache ich da einen Denkfehler?
sbVNC.Glyph.Assign(icon);
|
Re: [TSpeedButton] Zur Laufzeit mit einem Glyph versehen
Und wie kann ich es vorher auf die passende Größe skalieren?
MfG xZise |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:57 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-2025 by Thomas Breitkreuz