![]() |
16x16px Icon auf Canvas zeichnen
Ich wollte ein 16x16 Pixel großes Icon auf ein Canvas zeichnen.
Das Icon habe ich aus der Exe mit
Delphi-Quellcode:
geladen.
IconMessage.LoadFromResourceID(hInstance, 34);
Das Icon beinhaltet einmal das Bild in 256 Farben und einmal in 32 Bit. Jetzt hab ich dazu mal zwei Fragen: Wenn ich jetzt das Icon mit
Delphi-Quellcode:
auf mein Canvas zeichne, wird es auf 32x32 Pixel vergrößert.
Draw(Rect.Left + 2, Rect.Top + 2, IconIncoming);
Wie kann man das verhindern, sodass das Icon einfach in Originalgröße gezeichnet wird? Uuuuuund Kann man irgendwie beeinflussen, ob das 256 Farben Icon oder das mit 32 Bit gezeichnet wird? Oder geschieht das automatisch je nach Möglichkeiten des Systems? Danke sehr schonmal für Antworten! |
Re: 16x16px Icon auf Canvas zeichnen
Hi,
bei mir geht es jedenfalls hiermit, dass das Icon mit einer Größe von 16X16 angezeigt wird:
Delphi-Quellcode:
var
ico: TIcon; begin ico:= TIcon.Create; try ico.Handle:= LoadImage(Hinstance, MakeIntResource(1), IMAGE_ICON, 16, 16, 0); Canvas.Draw(0, 0, ico); finally ico.Free; end; |
Re: 16x16px Icon auf Canvas zeichnen
Vielen Dank für die Antwort!
Jetz wird es schonmal in der richtigen Größe gezeichnet. Aber ich glaube es wird jetzt nur noch das 8-Bit Icon geladen, es fehlen mir irgendwie die Schattierungen. Wie kann man denn entscheiden, welche Version vom Icon geladen wird? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:14 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