📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, ComCtrls, Grids, hexeditor, StdCtrls;
type
TForm1 = class(TForm)
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
Memo1: TMemo;
HexEditor1: THexEditor;
HeaderControl1: THeaderControl;
Panel1: TPanel;
btn1: TButton;
Button1: TButton;
Button2: TButton;
Memo2: TMemo;
procedure Button1Click(Sender: TObject);
procedure btn1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
HexEditor1.LoadFromFile(OpenDialog1.FileName);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if SaveDialog1.Execute then
memo2.Lines.SaveToFile(savedialog1.FileName);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
i,size:integer;
s:string;
t:string;
const
enter:string=#13;
begin
// Memo2.Lines.Text:= HexEditor1.AsHex;
screen.Cursor:=crHourGlass;
size:=hexeditor1.DataSize;
t:='type ' +#10+#13+
' TBuf=array[0..'+inttostr(size)+'] of Byte;'+ #10+#13+
'const '+#10+#13+
' Buf:TBuf=('+enter;
for I := 0 to size- 1 do
begin
if (I+1) mod 30=0 then
s:=s+#13;
if i=size-1 then
s:=s+'$'+inttohex(integer(hexeditor1.Data[i]),2)+');'
else
s:=s+'$'+inttohex(integer(hexeditor1.Data[i]),2)+' ,';
end;
memo2.Lines.Text:=t+s;
screen.Cursor:=crDefault;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -