
mfc 设定快捷键
假如我在快捷键列表中设定了ID_HELP的快捷键为VK_F1,但运行后按F1还是没用。是不是要编程?如何编?是否对菜单、主界面和对话框都是一样的编程?如果不是,请问各自怎...
假如我在快捷键列表中设定了ID_HELP的快捷键为VK_F1,但运行后按F1还是没用。
是不是要编程?如何编?
是否对菜单、主界面和对话框都是一样的编程?如果不是,请问各自怎么处理?
MFC新手,请帮帮忙。 展开
是不是要编程?如何编?
是否对菜单、主界面和对话框都是一样的编程?如果不是,请问各自怎么处理?
MFC新手,请帮帮忙。 展开
展开全部
在public里:procedure wmhotkey(var msg:Twmhotkey);message wm_hotkey;
然后再定义一个常量用来存你热键消息,如
const myhotkey=139;
接着:
procedure Tform1.wmhotkey(var msg:Twmhotkey);
begin
if msg.hotkey=myhotkey then
showmessage('发财了!');
end;
procedure Tform1.formcreate(sender:Tobject);
begin
registerhotkey(form1.handle,myhotkey,0,vk_F1);//vk_F1为你想定义的热键代码
end;
procedure Tform1.formdestroy(sender:Tobject);
begin
unregisterhotkey(form1.handle,myhotkey);
end;
告诉你一个最简单的方法,你为窗体建一个右键菜单(PopupMenu),在菜单项中设快键,将此菜单关联到窗体(窗体的PopupMenu属性)后,将菜单的AutoPopup属性设为False这此菜单不能弹出,但快键还是有效!
然后再定义一个常量用来存你热键消息,如
const myhotkey=139;
接着:
procedure Tform1.wmhotkey(var msg:Twmhotkey);
begin
if msg.hotkey=myhotkey then
showmessage('发财了!');
end;
procedure Tform1.formcreate(sender:Tobject);
begin
registerhotkey(form1.handle,myhotkey,0,vk_F1);//vk_F1为你想定义的热键代码
end;
procedure Tform1.formdestroy(sender:Tobject);
begin
unregisterhotkey(form1.handle,myhotkey);
end;
告诉你一个最简单的方法,你为窗体建一个右键菜单(PopupMenu),在菜单项中设快键,将此菜单关联到窗体(窗体的PopupMenu属性)后,将菜单的AutoPopup属性设为False这此菜单不能弹出,但快键还是有效!
展开全部
你打开快捷键表~
1.看清楚了~
ID_HELP对应的键是什么?确定是VK_F1?
2.你这个ID_HELP没有对应菜单项~
例如你想启动菜单项中的"帮助",而这个菜单的ID是"ID_APP_ABOUT"
那么你就可以将ID_HELP该为ID_APP_ABOUT,这样就能实现目的~
PS:最好不要设置一些已经有的快捷键作为新的快捷键~
1.看清楚了~
ID_HELP对应的键是什么?确定是VK_F1?
2.你这个ID_HELP没有对应菜单项~
例如你想启动菜单项中的"帮助",而这个菜单的ID是"ID_APP_ABOUT"
那么你就可以将ID_HELP该为ID_APP_ABOUT,这样就能实现目的~
PS:最好不要设置一些已经有的快捷键作为新的快捷键~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你用wizzard生成的工程来加快捷键试试看,
如果是自己写的code,你可以2个比较一下
如果是自己写的code,你可以2个比较一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询