c语言中如何注册及响应热键?
2个回答
展开全部
在.h中: public: // User declarations BEGIN_MESSAGE_MAP MESSAGE_HANDLER(WM_HOTKEY,TMessage,OnHotKey) END_MESSAGE_MAP(TForm) void __fastcall TMainForm::OnHotKey(TMessage &Message); //响应热键消息 在.cpp中: void __fastcall TMainForm::FormCreate(TObject *Sender) { //注册系统热键 if(!RegisterHotKey(Handle,2000,MOD_CONTROL,VK_F12)) //这里注册的热键是Ctrl+F12 ShowMessage("热键注册失败"); } //--------------------------------------------------------------------------- void __fastcall TMainForm::OnHotKey(TMessage &Message) { //添加你的代码 TForm::Dispatch(&Message); if (!MainForm->Visible) { MainForm->Show(); MainForm->BringToFront(); } else MainForm->Hide(); } //--------------------------------------------------------------------------- void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action) { UnregisterHotKey(Handle, 2000);//退出程序时注销热键 }
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询