Декодирование целого числа и других масок в Какао

Какао имеет множество целочисленных масок и кодов. Например, NSCommandKeyMask или NSF1FunctionKey, которые ясно определяются и документируются в заголовки.

Однако некоторые могут быть архаичными и при доступе к атрибутам доступности, например, для получения глифа (AXMenuItemCmdGlyph), Вам дают целое число как 111, который представляет F1 (0xf704), или 112, который представляет F2 (шестнадцатеричное число: 0xf705).

Существует ли простой способ иметь дело с масками и кодами? Возможно, один это может преобразовать 111 в соответствующий шестнадцатеричный unicode 0xf704? То, что я имею в виду, - то, что NSEvent.h отображает NSF1FunctionKey на 0xf704, но существует ли отображение для 111 к NSF1FunctionKey или 0xf704?

8
задан the979kid 24 July 2010 в 15:16
поделиться

1 ответ

Если вам нужен символ Unicode для эквивалента ключа пункта меню, а не глиф для него, попробуйте получить атрибут kAXMenuItemCmdCharAttribute вместо kAXMenuItemCmdGlyphAttribute .

1
ответ дан 6 December 2019 в 02:23
поделиться