На главную

On-line справка по Win32 API

Написать письмо
БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО!
Список всех статей A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z | Скачать Вниз

Translating Character Messages



Any thread that receives character input from the user must include the TranslateMessage function in its message loop. This function examines the virtual-key code of a keystroke message and, if the code corresponds to a character, places a character message into the message queue. The character message is removed and dispatched on the next iteration of the message loop; the wParam parameter of the message contains the character code.

In general, a thread's message loop should use the TranslateMessage function to translate every message, not just virtual-key messages. Although TranslateMessage has no effect on other types of messages, it guarantees that keyboard input is translated correctly. The following example shows how to include the TranslateMessage function in a typical thread message loop.

while (GetMessage(&msg, (HWND) NULL, 0, 0)) {
if (TranslateAccelerator(hwndMain, haccl, &msg) == 0) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}



Пригласи друзей и счет твоего мобильника всегда будет положительным!
Предыдущая статья
 
Сайт Народ.Ру Интернет
Следующая статья
Пригласи друзей и счет твоего мобильника всегда будет положительным!

Перевод Символьных Сообщений



Любая резьба, которая получает символьный вклад из потребителя должно включить функцию TranslateMessage в свой цикл сообщения. Эта функция изучает виртуальный-ключевой код нажатия клавиши сообщения и, если код переписывается в символ, устанавливает символьное сообщение в очередь сообщения. Символьное сообщение удалено и послано в следующую итерацию цикла сообщения; параметр wParam сообщения содержит символьный код.

В общих чертах, цикл сообщения резьбы должен использовать функцию TranslateMessage, чтобы переводиться каждое сообщение, просто не виртуальные-ключевые сообщения. Хотя TranslateMessage не имеет эффект в других типах сообщений, это гарантирует, что ввод данных с клавиатуры переводится правильно. Следующий пример показывает как, чтобы включать функцию TranslateMessage в цикл сообщения типичной резьбы.

пока (GetMessage(&msg, (HWND) НЕДЕЙСТВИТЕЛЬНЫЙ, 0, 0)) { если (TranslateAccelerator(hwndMain, haccl, &msg) == 0) { TranslateMessage(&msg);
DispatchMessage(&msg);
}
}



Вверх Version 1.3, Oct 26 2010 © 2007, 2010, mrhx Вверх
 mrhx software  Русский перевод OpenGL  Русский перевод Win32 API
 
Используются технологии uCoz