Einzelnen Beitrag anzeigen

Benutzerbild von Salomon
Salomon

Registriert seit: 9. Jun 2002
453 Beiträge
 
  Alt 24. Aug 2002, 14:14
Der Thread war mir bekannt, ich habe ihn nur nicht bis zum Ende verfolgt. Ich habe jetzt eine Lösung gefunden:
Code:
function GetAssociatedIcon(const AExtension: string; ASmall: Boolean): HIcon;
var
  Info: TSHFileInfo;
  Flags: Cardinal;
begin
  if ASmall then
    Flags := SHGFI_ICON or SHGFI_SMALLICON or SHGFI_USEFILEATTRIBUTES
  else
    Flags := SHGFI_ICON or SHGFI_LARGEICON or SHGFI_USEFILEATTRIBUTES;

  SHGetFileInfo(PChar(AExtension), FILE_ATTRIBUTE_NORMAL, Info, SizeOf(TSHFileInfo), Flags);
  Result := Info.hIcon;
end;

procedure TForm1.Image1Click(Sender: TObject);
var
  ListItem: TListItem;
     icon : TIcon;
begin
  ListView.LargeImages := Imagelist;
  Icon := TIcon.Create;
  Icon.Handle := GetAssociatedIcon('.pas', false);
  icon.Transparent := true;

   ListView.Items.BeginUpdate;
     ListItem := ListView.Items.Add;
     ListItem.ImageIndex := ImageList.AddIcon(Icon);
    //   ListView.Items[0].ImageIndex := icon.Handle;
     ListItem.Caption := 'joo';
   ListView.Items.EndUpdate;
 Icon.Free;
end;
Mfg
Salomon
  Mit Zitat antworten Zitat