Entwickler-Ecke
Windows API - SystemImageList Probleme unter D2007
NOS - Mi 23.07.08 22:26
Titel: SystemImageList Probleme unter D2007
Hallo zusammen,
ich nutze folgenden Code um die SystemImageList zu erhalten und diese dann für einen Listview zu nutzen ... leider habe ich nach dem call in der ImageList nur 5 Icons und ich finde das Problem nicht wirklich ... ich hoffe Ihr könnt mir da helfen ... ich nutze D2007 Pro auf einem Vista System
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| procedure TfrmInstantCRM.GetSmallSystemIcons; var SysIL: HImageList; SFI: TSHFileInfo; begin if ilFiles <> nil then ilFiles.Free; ilFiles := TImageList.Create(Application); SysIL := SHGetFileInfo('', 0, SFI, SizeOf(SFI), SHGFI_SYSICONINDEX or SHGFI_SMALLICON); if SysIL <> 0 then begin if ilFiles.HandleAllocated then ilFiles.Handle := 0; ilFiles.Masked := true; ilFiles.BkColor := TColor(clNone); ilFiles.DrawingStyle := dsTransparent; ilFiles.Handle := SysIL; ilFiles.ShareImages := true; end; end; |
die ilFIles ist auf dem Form gedroppt als TImageList ...
Ich habe gegoogelt und hin und her gesucht ... die routine scheint so wirklich ok zu sein ... habt Ihr eine Idee woran es liegen kann ?
NOS - Sa 26.07.08 21:05
Titel: Re: SystemImageList Probleme unter D2007
NOS hat folgendes geschrieben: |
Hallo zusammen,
ich nutze folgenden Code um die SystemImageList zu erhalten und diese dann für einen Listview zu nutzen ... leider habe ich nach dem call in der ImageList nur 5 Icons und ich finde das Problem nicht wirklich ... ich hoffe Ihr könnt mir da helfen ... ich nutze D2007 Pro auf einem Vista System
die ilFIles ist auf dem Form gedroppt als TImageList ...
Ich habe gegoogelt und hin und her gesucht ... die routine scheint so wirklich ok zu sein ... habt Ihr eine Idee woran es liegen kann ? |
So ...
nach langem hin und her habe ich das Problem gelöst ... scheinbar ist es so das es unter XP und davor problemslos war die SystemImageList wie ich es im COde hier geschrieben habe zuzuweisen ... unter vista gibt es allerdings eine interessante lösung ... wie ich las ist die systemimageliste undter vista dynamisch ... ich weis allergins nicht ob dem auch unter XP so war ... auf jeden fall geht es nun folgendermassen ....
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| procedure TfrmInstantCRM.GetSmallSystemIcons; var SysIL : HImageList; SFI : TSHFileInfo; begin SysIL := SHGetFileInfo('', 0, SFI, SizeOf(SFI),SHGFI_SYSICONINDEX or SHGFI_SMALLICON); if SysIL <> 0 then begin lvKundenDokumente.SmallImages.Handle := SysIL; lvKundenDokumente.SmallImages.Width := 16; lvKundenDokumente.SmallImages.Height := 16; lvKundenDokumente.SmallImages.ShareImages := True; end; end; |
Nun allerdings eine andere Frage ... es funktioniert prächtig ... aber wie bekomme ich das richtige icon eines folders ?
NOS - Sa 26.07.08 21:28
Titel: Re: SystemImageList Probleme unter D2007
NOS hat folgendes geschrieben: |
Hallo zusammen,
ich nutze folgenden Code um die SystemImageList zu erhalten und diese dann für einen Listview zu nutzen ... leider habe ich nach dem call in der ImageList nur 5 Icons und ich finde das Problem nicht wirklich ... ich hoffe Ihr könnt mir da helfen ... ich nutze D2007 Pro auf einem Vista System
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| procedure TfrmInstantCRM.GetSmallSystemIcons; var SysIL: HImageList; SFI: TSHFileInfo; begin if ilFiles <> nil then ilFiles.Free; ilFiles := TImageList.Create(Application); SysIL := SHGetFileInfo('', 0, SFI, SizeOf(SFI), SHGFI_SYSICONINDEX or SHGFI_SMALLICON); if SysIL <> 0 then begin if ilFiles.HandleAllocated then ilFiles.Handle := 0; ilFiles.Masked := true; ilFiles.BkColor := TColor(clNone); ilFiles.DrawingStyle := dsTransparent; ilFiles.Handle := SysIL; ilFiles.ShareImages := true; end; end; |
die ilFIles ist auf dem Form gedroppt als TImageList ...
Ich habe gegoogelt und hin und her gesucht ... die routine scheint so wirklich ok zu sein ... habt Ihr eine Idee woran es liegen kann ? |
So ...
auch das habe ich erledigt .... eine zweite routine um den iconindex eines folders zu erhalten und schongings ...
Thats it ....
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!