Возможно, ошибка в CMake (ранее отслеживаемая здесь ), что это не работает из коробки. Обходной путь состоит в том, чтобы сделать следующее:
add_test(TestName ExeName)
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND}
DEPENDS ExeName)
Затем вы можете запустить make check
, и он скомпилирует и запустит тест. Если у вас несколько тестов, вам придется использовать DEPENDS exe1 exe2 exe3 ...
в приведенной выше строке.
Возможно, я неправильно понял вопрос, но нельзя ли использовать keyup
, если вы хотите захватить оба входа?
$("input").bind("keyup",function(e){
var value = this.value + String.fromCharCode(e.keyCode);
});
Я предполагаю, что это для игры или для быстро реагирующего типа приложения, поэтому используется KEYDOWN, а не KEYPRESS.
Изменить : Черт! Я исправился (спасибо Crescent Fresh и Дэвиду): JQuery (или даже, скорее, базовые хосты DOM) не раскрывают детали WM_KEYDOWN и других событий. Скорее они предварительно переваривают эти данные, и, в случае keyDown даже в JQuery, мы получаем:
Обратите внимание, что эти свойства являются значениями UniCode.
Обратите внимание, мне не удалось найти авторитетную ссылку на это в документации JQuery, но многие авторитетные примеры в сети относятся к этим двум свойствам.
Следующий код, адаптированный из некоторого моего java (не javascript), является поэтому совершенно неверно ...
Следующее даст вам "интересные" части ключевого кода:
value = e.KeyCode;
repeatCount = value & 0xFF;
scanCode = (value >> 16) & 0xFF; // note we take the "extended bit" deal w/ it later.
wasDown = ((value & 0x4000) != 0); // indicate key was readily down (auto-repeat)
if (scanCode > 127)
// deal with extended
else
// "regular" character