⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.pas.~5~

📁 用delphi编写的一个提取ICO的小工具
💻 ~5~
字号:
unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm9 = class(TForm)
    lbl1: TLabel;
    txt1: TEdit;
    btn1: TButton;
    dlgOpen1: TOpenDialog;
    dlgSave1: TSaveDialog;
    procedure btn1Click(Sender: TObject);
  private
    imgArr:array of TImage;
    { Private declarations }
    procedure saveIcon(s:TObject);
  public
    { Public declarations }
  end;

var
  Form9: TForm9;

implementation
uses
  ShellAPI;

{$R *.dfm}

procedure TForm9.btn1Click(Sender: TObject);
var
  num:Integer;
  I: Integer;
begin
  if Length(imgArr)>0 then
    for I := Low(imgArr) to High(imgArr) do
      imgArr[i].Free;

  if dlgOpen1.Execute then
  begin
    num:=extracticon(HInstance,PChar(dlgOpen1.FileName),-1);
    if num>0 then
    begin
      SetLength(imgArr,num);
      for I := 0 to num - 1 do
      begin
        imgArr[i]:=TImage.Create(Self);
        imgArr[i].Parent:=Self;
        imgArr[i].Width:=64;
        imgArr[i].Height:=64;
        imgArr[i].Stretch:=True;
        imgArr[i].Left:=5 + (i mod 5)*65;
        imgArr[i].Top:=25 + (i div 5)*65;
        imgArr[i].Picture.Icon.Handle:=ExtractIcon(HInstance,PChar(dlgOpen1.FileName),i);
        imgArr[i].OnClick:= saveIcon;
      end;
    end;
  end;
end;

procedure TForm9.saveIcon(s: TObject);
begin
  if s is TImage then
  begin
    if dlgSave1.Execute() then
      (s as TImage).Picture.SaveToFile(dlgSave1.FileName);
  end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -