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();
    }

     

    效果图:

     




  • 相关阅读:
    转: PHP的"::"、"->"和"=>"的区别
    PHP命名空间
    PHP+MySQL数据库编程的步骤
    SQL基础
    Mysql的CMD操作
    Apache服务器配置
    【网关】SpringCloud-Gateway
    Oracle表分区
    MongoDB---分片
    MongoDB-BSON
  • 原文地址:https://www.cnblogs.com/xe2011/p/3885720.html
Copyright © 2011-2022 走看看