打印本文 打印本文 关闭窗口 关闭窗口
输出SHELL32.DLL的图标
作者:武汉SEO闵涛  文章来源:敏韬网  点击数932  更新时间:2009/4/23 18:39:18  文章录入:mintao  责任编辑:mintao

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.

打印本文 打印本文 关闭窗口 关闭窗口