AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Icon in ImageList laden & in einer Listview anzeigen lassen

Icon in ImageList laden & in einer Listview anzeigen lassen

Ein Thema von Yheeky · begonnen am 1. Jan 2005 · letzter Beitrag vom 5. Jan 2005
Antwort Antwort
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#1

Icon in ImageList laden & in einer Listview anzeigen las

  Alt 1. Jan 2005, 15:55
Hi!

Ich habe folgendes Problem: Ich habe eine Funktion, die ein Icon einer Datei in ein Bitmap ausliest. Das verarbeite ich so:

Code:
if (SpieleDialog.Execute) and (SpieleDialog.FileName <> '') then
   begin
   SpielePfad.Text := SpieleDialog.FileName;
   Dummy := 1;
   Icon := TIcon.Create;
   Icon.Handle := ExtractAssociatedIcon(Handle, PChar(SpieleDialog.FileName), Dummy);
   SpieleIcon.Canvas.Draw(0, 0, Icon);
   SpieleList.AddIcon(Icon);
   Icon.Free;
   end;
Wenn ich nun die Imagelist (in die das Icon reingeladen wird) mit der ListView verknüpfe (wo das Icon schließlich angezeigt werden soll), wird dies nicht transparent, sondern mit einem schwarzen Hintergrund angezeigt. Woran liegt das und wie kann ich das transparent anzeigen lassen?

Gruß Yheeky
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#2

Re: Icon in ImageList laden & in einer Listview anzeigen

  Alt 4. Jan 2005, 12:52
Hat keiner eine Idee?
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Icon in ImageList laden & in einer Listview anzeigen

  Alt 4. Jan 2005, 13:03
Hi,

versuch das im FormCreate Deiner Form ausführen:

Delphi-Quellcode:
var
  SHFileInfo: TSHFileInfo;
  SysIcons : THandle;
begin
  // SpieleIcon := TImageList.Create(Self);
  SpieleIcon.Masked := False;
  try
    SysIcons := SHGetFileInfo(PChar(Copy(ParamStr(0), 1, 3)), 0, SHFileInfo,
      SizeOf(SHFileInfo), SHGFI_SYSICONINDEX or SHGFI_SMALLICON or
      SHGFI_ICON);
  finally
    DestroyIcon(SHFileInfo.hIcon);
  end;
  SpieleIcon.Handle := SysIcons;
  SpieleIcon.ShareImages := True;
Zumindest hat es bei mir so geklappt

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#4

Re: Icon in ImageList laden & in einer Listview anzeigen

  Alt 4. Jan 2005, 20:56
Mhmm, der Code verändert nur das Aussehen meines OpenDialogs. Ansonsten nicht viel. Dürfte doch eigentlich nicht so schwer sein, ein Icon transparent in einer ListView dazustellen oder? Vielleicht gibt´s da ja noch ne andere Möglichkeit. Ich will das Icon in einem TImage anzeigen und in eine TListView laden, mehr eigentlich nicht.

Gruß Yheeky
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Icon in ImageList laden & in einer Listview anzeigen

  Alt 4. Jan 2005, 21:00
Was hast du denn in der ImageList eingestellt?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#6

Re: Icon in ImageList laden & in einer Listview anzeigen

  Alt 5. Jan 2005, 12:55
Habe die Breite und Höhe auf 32 Pixel verändert und hab den Drawing Style auf dsTransparent gestellt. Das war´s...
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz