Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
1. Sep 2006
Wenn der SpeedButton kleiner ist als 36*36 Pixel
dann wird mit SHGFI_SmallIcon der SpeedButton total verhunzt?!?
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
31. Aug 2006
... super, funzt auch.
Werde noch ein bisschen testen ob noch irgendwelche Macken auftauchen.
Danke - Gruss MarLe
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
31. Aug 2006
... ja, so funktioniert's - Danke.
Der SpeedButton muss aber mindestens 36*36 Pixel haben um das Icon
unterzubringen.
Ich werde dennoch auch noch versuchen das gleiche mit SHGetFileInfo
abbilden zu können, dann könnte man alternativ auch die kleineren Icons
verwenden. Vielleicht hat's auch schon jemand umgesetzt.
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
31. Aug 2006
Die weißen Ränder sind jetzt weg, aber an der Bildqualität hat sich nicht's geändert.
z.B. wird das schwarze Verknüpfungssymbol von Windows grau dargestellt.
Hab mal gegoogelt und den Artikel
http://www.aboutvb.de/khw/artikel/khwassocicon.htm
gefunden. Da steht u.a. das die ExtractAssociatedIcon-Funktion, wie gesagt, nur bedingt brauchbar ist
und man besser auf die SHGetFileInfo-Funktion...
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
31. Aug 2006
Hab's jetzt wie folgt umgesetzt:
procedure TForm1.Button1Click(Sender: TObject);
var
ICO: TIcon;
Large, Small: HIcon;
IconIndex: Word;
buf: array of char;
begin
ICO := TIcon.Create;
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
30. Aug 2006
Du verwirrst mich jetzt wieder ein bisschen.
Muss ich nach dem Zuweisen des Bildes zusätzlich noch irgendwas unter finally freigeben???
Um das Bild generell wieder sauber loszuwerden reicht dann ein
SpeedButton1.Glyph := nil;
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
30. Aug 2006
Aha, kein Problem wenn das die sauberste Lösung darstellt.
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
30. Aug 2006
Ich würde Euch ja glauben, aber die Praxis zeigt mir noch Bildreste bei obigen Code?!?
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
30. Aug 2006
Das kann ich jetzt so nicht bestätigen.
Ohne die Zeile
SpeedButton1.Glyph := nil;
wird das letzte Bild über das erste gelegt, ich sehe also noch die Bildreste?!?
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
29. Aug 2006
Hab's so probiert, hat aber am Problem nicht's geändert, trotzdem Danke.
Forum: Object-Pascal / Delphi-Language
Delphi
by MarLe,
29. Aug 2006
Mit folgender Prozedur möchte ich auf einem SpeedButton ein Bild,
aus einer Anwendung, Verknüpfung etc. (Icon) anzeigen lassen
(ohne eine Icon/Bitmap-Datei speichern zu müssen).
procedure TForm1.Button1Click(Sender: TObject);
var
IconIndex: Word;
ImageHandle: HIcon;
TmpBMP: TBitmap;
TmpIcon : TIcon;