zoukankan      html  css  js  c++  java
  • C++ Code_HotKey

     
     
     
     

    Code::使用HotKeyCtrl定义一个系统热键 

      

    // 关联HotKeyCtrl控件变量 m_HotKey1
     
     
     
    BEGIN_MESSAGE_MAP(CXyzDlg, CDialog)
        //{{AFX_MSG_MAP(CXyzDlg)
        ON_WM_SYSCOMMAND()
        ON_MESSAGE(WM_HOTKEY,OnHotKey)
        ON_WM_PAINT()
        ON_WM_QUERYDRAGICON()
        ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
        ON_WM_CLOSE()
        //}}AFX_MSG_MAP
    END_MESSAGE_MAP()
        
    void CXyzDlg::OnButton1() 
    {
        // TODO: Add your control notification handler code here
        
        WORD m_wVkCode;
        WORD m_wModifier;
        m_HotKey1.GetHotKey(m_wVkCodem_wModifier);
        
        AfxGetMainWnd()->SendMessage(WM_SETHOTKEY,(WPARAM)MAKEWORD(m_wVkCode,m_wModifier));
        UINT mod = 0;
        if ( m_wModifier&HOTKEYF_ALT )     mod|=MOD_ALT;
        if ( m_wModifier&HOTKEYF_CONTROL ) mod|=MOD_CONTROL;
        if ( m_wModifier&HOTKEYF_SHIFT )   mod|=MOD_SHIFT;
        if ( m_wModifier&HOTKEYF_EXT )     mod|=MOD_WIN;
        
        m_wModifier=mod;
        ::RegisterHotKey(AfxGetMainWnd()->m_hWnd111 , m_wModifierm_wVkCode);
        
    }
        
    void CXyzDlg::OnHotKey(WPARAM wParamLPARAM lParam)
    {
        switch (wParam)
        case 111:
            AfxMessageBox("热键响应成功!");
    //    CDialog::OnHotKey(wParam,lParam);
    }
        
    void CXyzDlg::OnClose() 
    {
        // TODO: Add your message handler code here and/or call default
        ::UnregisterHotKey(m_hWnd,111);
        CDialog::OnClose();
    }

     

    效果图:

     




  • 相关阅读:
    高效沟通
    Oracle播放多条 INSERT ALL
    oracle的同义词总结
    Brute force Attack
    爱因斯坦方程与小黑洞
    dom 编程(html和xml)
    dexposed框架Android在线热修复
    从微软小冰看微软运营手段的转型
    剑指offer_面试题_从上往下打印二叉树
    外面的wifi非常精彩,外面的wifi非常不安
  • 原文地址:https://www.cnblogs.com/xe2011/p/3885720.html
Copyright © 2011-2022 走看看