怎样得到文件的16*16 的图标,extracticon?

stanely 2002-02-27 08:16:19
?
...全文
106 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
taxi 2002-09-14
  • 打赏
  • 举报
回复
如果要得到在大图标则:
SHGetFileInfo(PChar(OpenDialog1.FileName), 0, FileInfo, SizeOf(TSHFileInfo),
SHGFI_ICON or SHGFI_LARGEICON);

taxi 2002-09-14
  • 打赏
  • 举报
回复
最后一句写错了。
Image1.Picture.Icon.Handle := FileIcon.hIcon;
taxi 2002-09-14
  • 打赏
  • 举报
回复
uses ShellApi;

procedure TForm1.Button1Click(Sender: TObject);
var
FileInfo: TSHFileInfo;
begin
if OpenDialog1.Execute then
begin
FileInfo.iIcon := 0;
SHGetFileInfo(PChar(OpenDialog1.FileName), 0, FileInfo, SizeOf(TSHFileInfo),
SHGFI_ICON or SHGFI_SMALLICON);
Image1.Icon.Handle := FileInfo.hIcon;
end;
end;
qevan 2002-09-14
  • 打赏
  • 举报
回复
收益
BoningSword 2002-04-12
  • 打赏
  • 举报
回复
var
Icon:TICon;
begin
Icon:=TIcon.Create;
Icon.wigh:=16;
Icon.Heigh:=16;
Icon.Handle:=ExtractIcon(Hinstance,"FileName",0) ;
Icon.free;
end;

可以試一試
stanely 2002-03-03
  • 打赏
  • 举报
回复
??
stanely 2002-03-03
  • 打赏
  • 举报
回复
我想让listview现实文件夹,但是想用report方式,32的太大
ihihonline 2002-03-03
  • 打赏
  • 举报
回复
为什么要用16*16?
stanely 2002-03-03
  • 打赏
  • 举报
回复
我式过了,最后一个参数无论是多少,得到的都是32*32的。
怎么得到16*16?
stanely 2002-02-28
  • 打赏
  • 举报
回复
我想得到的是dll,exe里面的16*16的图标呀,不是用extractasspciatedicon呀
INeedCa 2002-02-27
  • 打赏
  • 举报
回复
最后一个参数是IconIndex,试试1、2...
stanely 2002-02-27
  • 打赏
  • 举报
回复
你说的好像只能得到32*32的呀!
wz2001 2002-02-27
  • 打赏
  • 举报
回复
Yes!
aIcon.Handle:=ExtractIcon(Hinstance,"FileName",0)

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧