用action
讲按钮窗体的Keypreview设为True,然后加如下代码
1
2
3
4
5
6
|
procedure
TForm1
.
FormKeyDown(Sender: TObject;
var
Key:
Word
;
Shift: TShiftState);
begin
if
Key=VK_F1
then
self
.
Button5
.
Click;
end
;
|
Shift: TShiftState);
begin
case key of
VK_F1: Button1Click(nil);
VK_F2: Button2Click(nil);
end;
end;
procedure TForm1.evnts1Message(var Msg: tagMSG;
var Handled: Boolean);
begin
//如果不是当前窗体的消息,不处理
if GetActiveWindow <> Handle then
Exit;
//处理F1
if (Msg.message=WM_KeyDown) and (Msg.wParam=VK_F1) then
begin
btnHelpClick( Self );
Handled := True;
end;
end;
TActionList 简单方便