新建一个工程,放入TListview,TEdit,TButton,TImageList,TOpenDialog控件各一个
然后就仔细看下面的代码吧~:)
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ImgList, ShellAPI;//ExtractIcon函数属于ShellAPI单元
type
TForm1 = class(TForm)
lv1: TListView;
edt1: TEdit;
btn1: TButton;
il1: TImageList;
dlgOpen1: TOpenDialog;
procedure btn1Click(Sender: TObject);
procedure edt1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
var
myIco:TIcon;//建立一个图标对象用于存放图标
imageno:Integer;//存放图片加入Imagelist的编号
strpath,strfilename:String;//存放Exe文件路径,Exe文件名
begin
strpath:=edt1.Text;
myico:=TIcon.Create;//初始化图标对象
if FileExists(strPath) then//如果文件存在
begin
myico.Handle:= ExtractIcon(hInstance,PChar(strPath),0);//取出Exe文件的图标
imageno:=il1.AddIcon(myIco);//把图标加入ImageList中
strfilename:=ExtractFileName(strpath);//根据文件路径取出文件名
lv1.Items.Add.Caption:=strfilename;//朝listview中填加文件名
lv1.Items[lv1.Items.Count-1].ImageIndex:=imageno;//给ListView赋予所在imagelist中的编号
end else
beging
showmessage('文件不存在');
end;
end;
procedure TForm1.edt1Click(Sender: TObject);//当Edit被单击时
begin
if dlgOpen1.Execute then
edt1.Text:=dlgOpen1.FileName;
end;
procedure TForm1.FormCreate(Sender: TObject);//窗体初始化
begin
lv1.LargeImages:=il1; //指明使用哪个图片集合
lv1.ViewStyle:=vsIcon; //指明显示方式(以图标方式显示)
end;
end.
然后就仔细看下面的代码吧~:)
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ImgList, ShellAPI;//ExtractIcon函数属于ShellAPI单元
type
TForm1 = class(TForm)
lv1: TListView;
edt1: TEdit;
btn1: TButton;
il1: TImageList;
dlgOpen1: TOpenDialog;
procedure btn1Click(Sender: TObject);
procedure edt1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
var
myIco:TIcon;//建立一个图标对象用于存放图标
imageno:Integer;//存放图片加入Imagelist的编号
strpath,strfilename:String;//存放Exe文件路径,Exe文件名
begin
strpath:=edt1.Text;
myico:=TIcon.Create;//初始化图标对象
if FileExists(strPath) then//如果文件存在
begin
myico.Handle:= ExtractIcon(hInstance,PChar(strPath),0);//取出Exe文件的图标
imageno:=il1.AddIcon(myIco);//把图标加入ImageList中
strfilename:=ExtractFileName(strpath);//根据文件路径取出文件名
lv1.Items.Add.Caption:=strfilename;//朝listview中填加文件名
lv1.Items[lv1.Items.Count-1].ImageIndex:=imageno;//给ListView赋予所在imagelist中的编号
end else
beging
showmessage('文件不存在');
end;
end;
procedure TForm1.edt1Click(Sender: TObject);//当Edit被单击时
begin
if dlgOpen1.Execute then
edt1.Text:=dlgOpen1.FileName;
end;
procedure TForm1.FormCreate(Sender: TObject);//窗体初始化
begin
lv1.LargeImages:=il1; //指明使用哪个图片集合
lv1.ViewStyle:=vsIcon; //指明显示方式(以图标方式显示)
end;
end.