——此文章摘自《Delphi开发经验技巧宝典》定价¥特价¥ 购买>>http://tracklinktechcn/?m_id=dangdang&a_id=A&l=&l_type= width= height= border= nosave> 本例实现将打开对话框中选择的文件的图标和文件名显示在ListView中双击ListView中的图标可以打开相应文件如图所示 http://developcsaicn/delphi/images/jpg> 图 把选择的文件图标显示在列表中 通过SHGetFileInfo方法获取文件的图标把图标资源添加到ImageList中通过ImageList在ListView中显示所选文件的图标双击ListView子项时通过ShellExecute方法执行所选中的文件主要代码如下 //单击选择文件按钮 procedure TFormBitBtnClick(Sender: TObject); var ListItem: TListItem; Flag: Cardinal; info: SHFILEINFOA; Icon: TIcon; OpenDiaLog: TOpenDialog; begin OpenDiaLog := TOpenDialogCreate(Self); if OpenDiaLogExecute then begin with ListView do begin LargeImages := ImageList; Icon := TIconCreate; ListItem := ItemsAdd; ListitemCaption := OpenDiaLogFileName; Flag := (SHGFI_SMALLICON or SHGFI_ICON or SHGFI_USEFILEATTRIBUTES); SHGetFileInfo(Pchar(OpenDiaLogFileName) info Sizeof(info) Flag); IconHandle := infohIcon; ImageListAddIcon(Icon); ListItemImageIndex := ImageListCount ; end; end; end; //双击ListView procedure TFormListViewDblClick(Sender: TObject); var FileName: string; os: OFSTRUCT; hFile: THandle; begin FileName := ListViewSelectedCaption; ShellExecute(selfHandle nil PChar(FileName) nil nil SW_SHOW); end; |