以前写的,仅供参考。
procedure TIconShow.FileListBox1Click(Sender: TObject);
var
MyIcon:TIcon;
MyBitMap:Tbitmap;
begin
MyIcon:=TIcon.Create ;
MybItmap:=TBItMap.Create ;
try
//从Listbox1中得到图标文件名
StrFileName:=FileListBox1.Items[FileListBox1.ItemIndex];
StrPCopy(cStrFileName,StrFileName);
MyIcon.Handle:=ExtractIcon(hInstance,cStrfileName,0);
//在SpeedButton 显示转换成的位图。
SpeedButton1.Glyph:=MyBitMap;
SpeedButton1.Glyph.width:=MyIcon.Width;
SpeedButton1.Glyph.Height:=MyIcon.Height;
SpeedButton1.Glyph.Canvas.Draw (0,0,MyIcon);
SpeedButton1.Hint:=strFileName;
finally
MyIcon.Free ;
MyBitMap.Free ;
end;
end;//其它方式的转换如此类推。
我这一段没 Croco 的好。
Croco 的这一段中
1、 procedure IconToBMPDemo; 等。可能要改为
procedure Tform.IconToBMPDemo;//定义时要,说明时才不要。
2、在uses中还要加一小句:Jpeg 不然是不行的。
好了,祝你节日快乐。