Эй,
Я пытаюсь закодировать определенные значения, которые я получаю от события клавиатуры.
В основном я хочу проверить, была нажата определенная комбинация клавиш или нет, поэтому для этого я преобразую коды клавиш впоследовательность / шаблон и сохранить его в объекте и в значении (функции) для каждой кодовой последовательности.
Теперь мне нужно использовать четыре байта, и в первом байте (MSB) я должен хранить shift, alt, ctrl соответственно и впоследний (LSB) я должен сохранить код нажатой клавиши.
Вот код:
private function m_encodeValue(key:String, Ctrl:Boolean = true, Alt:Boolean = true, Shift:Boolean = false):uint
{
var encodedValue:uint;
encodedValue = uint(Shift) << 2 | uint(Alt) << 1 | uint(Ctrl);
encodedValue = encodedValue | (uint(key.toUpperCase().charCodeAt(0)) << 24);
return encodedValue;
}