📄 unit1.~pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TDataRecord = packed record
Name,
Sex,
Hobby: String[10];
end;
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
CF_CUSTOMFORMAT: Word;
const
CF_CUSTOMFORMATNAME = 'CF_CUSTOMFORMAT';
implementation
uses Clipbrd;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
DataRec: TDataRecord;
Data: THandle;
PData: Pointer;
begin
with DataRec do
begin
Name := Edit1.Text;
Sex := Edit2.Text;;
Hobby := Edit3.Text;
end;
Data := GlobalAlloc(GMEM_MOVEABLE, SizeOf(TDataRecord));
PData := GlobalLock(Data);
Move(DataRec, PData^, SizeOf(TDataRecord));
Clipboard.SetAsHandle(CF_CUSTOMFORMAT, Data);
GlobalUnlock(Data);
//GlobalFree(Data);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
DataRec: TDataRecord;
Data: THandle;
PData: Pointer;
begin
Data := Clipboard.GetAsHandle(CF_CUSTOMFORMAT);
if Data = 0 then Exit;
PData := GlobalLock(Data);
Move(PData^, DataRec, GlobalSize(Data));
GlobalUnlock(Data);
with DataRec do
ShowMessage(Name + #13#10 + Sex + #13#10 + Hobby);
end;
initialization
CF_CUSTOMFORMAT := RegisterClipboardFormat(CF_CUSTOMFORMATNAME);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -