unit iconobject;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,shellapi,comobj, ComCtrls;
type TForm1 = class(TForm) ListView1: TListView;
procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } public { Public declarations }
end;
var Form1: TForm1; Desktopicon: TimageList; implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject); Var Sfi : TSHFileInfo; I : Integer; ListItem : TListItem; begin // 输出所有的 windows 95/98/2000 图标 DesktopIcon:= TImageList.Create(Self); DesktopIcon.Handle := SHGetFileInfo('''''''', 0, sfi, SizeOf(TSHFileInfo), shGFI_SYSICONINDEX or SHGFI_SMALLICON); DesktopIcon.ShareImages := TRUE; ListView1.SmallImages := Desktopicon; For I:=0 to 255 -1 do With ListView1 Do Begin ListItem := Items.add; ListItem.Caption := Inttostr(I); ListItem.ImageIndex := I; End; end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin Desktopicon.free; end;
end.
|