【框架

您所在的位置:网站首页 alt加空格组合键可以 【框架

【框架

2024-07-11 17:06| 来源: 网络整理| 查看: 265

1添加“accelerator”资源­­

2、添加键值

3、添加处理事件

函数声明

afx_msg void OnAcceleratorCtrlO();

消息映射

ON_COMMAND(ID_ACCELERATOR_CTRL_O, &CDlgMain::OnAcceleratorCtrlO)

函数处理

void CDlgMain::OnAcceleratorCtrlO() { // }

4加载资源

在添加快捷键对象

class CDlgMain: public CDialog { HACCEL m_hAccel; };

在窗口的构造函数中加载

CDlgMain:: CDlgMain (CWnd* pParent /*=NULL*/) : CDialog (CDlgMain::IDD, pParent) { m_hAccel = ::LoadAccelerators(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDR_ACCELERATOR1)); }

5、激活快捷键,重写PreTranslateMessage函数,添加对快捷键处理的调用

virtual BOOL PreTranslateMessage(MSG* pMsg) ; BOOL CDlgMain::PreTranslateMessage( MSG* pMsg ) { if (m_hAccel) { if (::TranslateAccelerator(m_hWnd, m_hAccel, pMsg)) { return(TRUE); } else { /*if(pMsg->message == WM_KEYDOWN) { if(int(pMsg->wParam) == VK_F5 ) { OnAcceleratorF5(); } else if(GetAsyncKeyState(VK_CONTROL)) { if( pMsg->wParam == 'O') OnAcceleratorCtrlO(); else if( pMsg->wParam == 'F') OnAcceleratorCtrlF(); else if( pMsg->wParam == 'T') OnAcceleratorCtrlT(); else if( pMsg->wParam == 'J') OnAcceleratorCtrlJ(); else if( pMsg->wParam == 'M') OnAcceleratorCtrlM(); else if( pMsg->wParam == 'L') OnAcceleratorCtrlL(); } }*/ } } return CDialog::PreTranslateMessage(pMsg); }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3