PDA

Просмотр полной версии : Некорректное понимание правых и левых SHF, CTL и Alt.



Sergey1970
10.03.2011, 11:32
Столкнулся с проблемой в DCS A-10C. Если при программировании на кнопку повешано просто: SHF (CTL, Alt) и "клавиша клавиатуры", СН устройства при нажатии (отпускании) на данную кнопку эмулируют такую последовательность (например, видно по "Key Check"): нажатие левого LSHF (LCTL, LAlt) - нажатие "клавишы клавиатуры" - отпускание "клавишы клавиатуры" - отпускание LSHF (LCTL, LAlt). Т.е., корректно отрабатывают функцию нажатия "левого" LSHF (LCTL, LAlt) и "клавиша клавиатуры". Если же требуется применять "правые" и "левые" SHF, CTL или Alt, указывая специально "правые" и "левые" модификаторы RSHF, RCTL или RAlt (LSHF, LCTL или LAlt), то, в этом случае, программа СН отрабатывает нажатие некорректно. Например, "Key Check" показывает такую последовательность эмуляции при нажатии: нажатие правого RSHF (RCTL, RAlt) - опускание правого RSHF (RCTL, RAlt) - нажатие "клавишы клавиатуры" - отпускание "клавишы клавиатуры". Т.е. идет эмуляция пустого нажатия модификаторов и простого нажатия клавишы клавиатуры без модификатора.
ПС. Отсюда, вопрос. Как заставить СН устройства эмулировать одновременное (совместное) нажатие клавиш клавиатуры и правых модификаторов "контролов", "шифтов" и "альтов"?

tescatlipoka
10.03.2011, 20:37
Клавиши сразу в окошко записываешь нажатиями или предварительно нажав ПКМ - Add Keystroke (вроде так, давно это делал)?

Sergey1970
11.03.2011, 00:05
В Вашем вопросе оказался ответ на мой вопрос. Спасибо. Программировал всегда или нажатием клавиш клавиатуры или вписыванием в соответствующее поле буквенные мнемонические эквиваленты модификаторов или клавиш (типа BKSPC, SHF, KBDOWN, ....). До сего момента, пока ненужно было разделять при программирование на правые и левые модификаторы, этот способ был мне достаточен и другими не пользовался. Попробовал сейчас предложенный Вами способ через "Record Keystrokes" и этот метод вставил еще одну мнемоническую комбинацию "HOLD" (удерживать) перед "RALT g", например. Запись же таким же способом (через "Record Keystrokes") левого ALT и g, например, "HOLD" не добавляет. Дескриминация, однако. "Правых" обиденли. И нигде я необходимость наличие "HOLD" при программировании не встречал.