Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > msctls_hotkey32


Автор: 586 12.6.2006, 01:51
msctls_hotkey32
Первый раз работаю с этим контролом... Ничего не понимаю...

Народ, подскажите пожалуста, как в него установить значение и как его оттуда прочесть.

Искал в MSDN'е по словам "msctls_hotkey32" и "HotKey" и ничего подходящего не нашел.
 

Автор: Earnest 12.6.2006, 11:16
Вот это читал?
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/hotkey/hotkey.asp 

Автор: ElcnU 14.6.2006, 11:50
чтение типа того-
Код

//инициализация хоткеев
    for(i=0;i<13;i++)
    {
        WORD wVirtualKeyCode=0;
        WORD wModifiers=0;
        UINT fsModifiers=0;
        if(!(m_arhotkey[i]=m_hotkey[i].GetHotKey()))continue;
        m_hotkey[i].GetHotKey(wVirtualKeyCode,wModifiers);
        if(wModifiers&HOTKEYF_ALT)fsModifiers|=MOD_ALT;
        if(wModifiers&HOTKEYF_CONTROL)fsModifiers|=MOD_CONTROL;
        if(wModifiers&HOTKEYF_SHIFT)fsModifiers|=MOD_SHIFT;
        if(wModifiers&HOTKEYF_EXT)fsModifiers|=MOD_WIN;
        if(!RegisterHotKey(m_hWnd,i,fsModifiers,wVirtualKeyCode))
        {
            CString str;
            str.Format("Невозможно зарегистрировать горячую клавишу %d",i+1);
            m_hotkey[i].SetHotKey(0,0);
            AfxMessageBox(str);
        }
    }


а запись 
Код

m_hotkey[i].SetHotKey(wVirtualKeyCode,wModifiers);

 

Автор: 586 14.6.2006, 15:49
Понятно.

А как заставить реагировать HotKey на клавишу "WINDOWS"? 

Автор: ElcnU 14.6.2006, 16:09
хоть в мсдне и есть 
HOTKEYF_EXT   Extended key 
но реагировать на эту кнопку я контрол заставить не смог  smile 
вчем дело понятия не имею.. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)