Я искал способ, чтобы определить состояние CAPS LOCK в Python 3 и единственное, что я нашел, это применимо было a post here in Stack Overflow answered by Abhijit указанием:питон 3 обнаружения Caps Lock статус
Вы можете использовать ctypes загрузить user32.dll, а затем вызвать GetKeyState с nVirtKey = VK_CAPITAL (0x14)
def get_capslock_state(): import ctypes hllDll = ctypes.WinDLL ("User32.dll") VK_CAPITAL = 0x14 return hllDll.GetKeyState(VK_CAPITAL)
Я применил это мой сценарий, но возвращаемое значение не ожидается 1/0, но долго 9, которая никогда не повторяется. Я не уверен, как использовать это значение для возврата 1/0, T/F или любого истинного значения для проверки.
Любые идеи, основанные на комментарии Абхиджит или на другом методе, который работает в Python 3? Ваша помощь очень ценится, так как это сводит меня с ума.
Какова длительная последовательность, которую он возвращает? Какую ОС вы используете? – senshin
Скрипт работает в Windows, конечно (отсюда WinDLL). Я запускаю Windows 7 Enterprise, если это имеет значение. – danjmwalker
Что касается возвращаемого значения, оно всегда меняет числовую последовательность, но всегда 9 символов. Пример из последнего прогона - «361693184». – danjmwalker