1、ListView控件的ViewStyle属性设置为vsReport
2、为ListView控件添加列名-->设置Columns属性
3、开始编程
procedure TForm1.Button1Click(Sender: TObject);
var
tmpItem: TListItem;
begin
while not ADOQuery1.Eof do
begin
tmpItem := ListView1.Items.Add;
tmpItem.Caption := ADOQuery1.FieldByName('xx').AsString;
tmpItem.SubItems[0] := ADOQuery1.FieldByName('xx').AsString;
end;
end;
这样可以取得系统图标:
procedure GetFileIcon(FileName:string;Flag:integer;Icon:TIcon);
var
ImageList: TImageList;
FileInfo: TSHFILEINFO;
hnd:THandle;
begin
Flag := SHGFI_SYSICONINDEX or Flag;
FillChar(FileInfo, SizeOf(FileInfo), #0);
ImageList:= TImageList.Create(nil);
imagelist.ShareImages := true; //用了它才能用Free;
Hnd:=SHGetFileInfo(PChar(FileName), 0, FileInfo,
SizeOf(FileInfo), Flag);
ImageList.Handle:=Hnd;
ImageList.GetIcon(FileInfo.iIcon,Icon);
ImageList.Free;
end;
调用:
var
Icon: TIcon;
Flags:integer;
begin
Icon:= TIcon.Create;
Flags:= SHGFI_SMALLICON;
GetFileIcon('你要取名标的文件名',Flags,Icon);
//你的代码了,要如何处理Icon
Icon.Free;
end;