为什么这样不行? ( 积分: 20 )

  • 主题发起人 主题发起人 oer_2001
  • 开始时间 开始时间
O

oer_2001

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm20.Action1Execute(Sender: TObject);
begin
showmessage('action1');
end;

procedure TForm20.FormCreate(Sender: TObject);
var
act: TActionList;
action: TAction;
begin
act := TActionList.Create(self);
act.Name := 'act';
action := TAction.Create(act);
action.ShortCut := TextToShortCut('Ctrl+M');
action.OnExecute := Action1Execute;
ToolButton1.Action := action;
end;

运行后,我按Ctrl+M, 为什么不能执行相应的操作??而点ToolButton1按钮可以执行。
 
procedure TForm20.Action1Execute(Sender: TObject);
begin
showmessage('action1');
end;

procedure TForm20.FormCreate(Sender: TObject);
var
act: TActionList;
action: TAction;
begin
act := TActionList.Create(self);
act.Name := 'act';
action := TAction.Create(act);
action.ShortCut := TextToShortCut('Ctrl+M');
action.OnExecute := Action1Execute;
ToolButton1.Action := action;
end;

运行后,我按Ctrl+M, 为什么不能执行相应的操作??而点ToolButton1按钮可以执行。
 
检查一下你的form的keypreview是不是设成true了
 

Similar threads

I
回复
0
查看
592
import
I
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
597
import
I
后退
顶部