用不到HOOK
可以使用RegisterHotKey注册一个全局的热键:
在OnInitDialog中添加注册热键的代码:
RegisterHotKey(GetSafeHwnd(),1001,NULL,VK_F2);//F2键
RegisterHotKey(GetSafeHwnd(),1002,MOD_ALT,'1');//Alt+1键
在
BEGIN_MESSAGE_MAP(CXXXDlg, CDialog)
END_MESSAGE_MAP()
中添加WM_HOTKEY的消息映射:
ON_MESSAGE(WM_HOTKEY,OnHotKey)//快捷键消息映射手动加入
在头文件中添加OnHotKey的声明:
protected:
afx_msg LONG OnHotKey(WPARAM wParam,LPARAM lParam);//手动加入
CPP中OnHotKey的实现代码:
//相应快捷键的消息映射
LONG CXXXDlg::OnHotKey(WPARAM wParam,LPARAM lParam)
{
if(wParam ==1001)
{
MessageBox("热键F2已经按下!");
//这里可以加上你按钮要执行的 *** 作,或者直接调用按钮映射的消息函数
}
else if (wParam==1002)
{
MessageBox("热键ALT+1已经按下!");
}
return 0;
}
关闭对话框时使用
UnregisterHotKey(GetSafeHwnd(),1001);//注销F2键
UnregisterHotKey(GetSafeHwnd(),1002);//注销Alt+1键
注销热键
328 icePub_copyFiles
l 函数原型:
int WINAPI icePub_copyFiles(char strFromPath,char strToPath)
输入:strFromPath 源路径名
strToPath 目标路径名
输出:
VC sample代码:
int copyFiles(char strFromPath,char strToPath)
{
typedef int (WINAPI ICEPUB_COPYFILES)(char strFromPath,char strToPath);
ICEPUB_COPYFILES icePub_copyFiles = 0;
HINSTANCE hDLLDrv = LoadLibrary("icePubDlldll");
if(hDLLDrv)
{
icePub_copyFiles = (ICEPUB_COPYFILES )GetProcAddress(hDLLDrv, "icePub_copyFiles");
}
if(icePub_copyFiles)
icePub_copyFiles(strFromPath,strToPath);
if(hDLLDrv)
FreeLibrary(hDLLDrv);
return 0;
}
copyFiles("c:\\program files\\iceIE\\","D:\\tools\\");
>
向对话框上加可能在对话框里加个OnPaint()函数,把用刷新画笔刷到对话框上就行了。
向按钮上加就更简单了,你把按钮的控制类改成CBitmapButton再用LoadBitmap一下就行了。
细节你看下MSDN吧,或者给我发信息。
以上就是关于用VC++小程序(即使该程序没有焦点)如何响应所有的键盘输入全部的内容,包括:用VC++小程序(即使该程序没有焦点)如何响应所有的键盘输入、用VC++开发一个小程序,关于文件夹复制。、我想用VC(MFC)写个小程序,但不知道怎么给对话框和按钮添加图片等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)