Я знаю, что раньше были проблемы с этим в < 4.7.4 версии Qt. это было разрешено?Qt 4.7.4: Есть ли способ узнать статус CAPS LOCK?
4
A
ответ
2
Я не знаю никакого решения Qt.
Однако этот код должен работать на обоих окнах (не проверено) и x11 на базе ОС (работает на Linux)
#include <X11/XKBlib.h>
#include <QX11Info>
bool capsOn()
{
#ifdef Q_WS_WIN // MS Windows version
return GetKeyState(VK_CAPITAL) == 1;
#elif Q_WS_X11 // X11 version
unsigned int n = 0;
Display *d = QX11Info::display();
XkbGetIndicatorState(d, XkbUseCoreKbd, &n);
return (n & 0x01) == 1;
#else
# error Platform not supported
#endif
}
В X11 не забудьте добавить -lX11
к LIBS в файле QMAKE проекта.
Я не знаю, как это сделать на OS X. Если вам это нужно, взгляните на IOHIKeyboard и его функцию alphaLock(). Также проверьте this, особенно функцию darwinQueryHIDModifiers
.
Смежные вопросы
- 1. питон 3 обнаружения Caps Lock статус
- 2. Qt - Поле пароля, предупреждение о Caps-Lock
- 3. Android edittext caps lock
- 4. Есть ли способ, в Python, программно изменить CAPS LOCK/NUM LOCK/скроллинга состояния на hidraw устройства
- 5. Лучший способ перехватить нажатие Caps Lock
- 6. Bind to Caps Lock
- 7. Java-Caps Lock статус в фокусе формы получен
- 8. Caps Lock State в Qt (или любой API-интерфейс Mac)
- 9. Обнаружение, когда CAPS LOCK включен
- 10. XKB - Get Caps Lock mask
- 11. Есть ли способ узнать статус задания агента SQL Server?
- 12. Активировать ключ «Caps lock» для разных языков
- 13. Есть ли способ узнать, успешно ли ExecutorService?
- 14. Check Scroll Lock, Num Lock & Caps Lock в JavaScript на странице Загрузка
- 15. Control Caps-Lock для Android-клавиатуры
- 16. Applescript для преобразования Esc в Caps Lock при нажатии; Контроль при нажатии Caps Lock (macOS Sierra)?
- 17. Есть ли опция узнать статус сообщения twilio?
- 18. Переопределить Caps Lock с Ctrl, используя C#
- 19. Как я могу узнать, включен ли Caps Lock в Dev-C++?
- 20. Можно ли программно отключить ключ Caps Lock в Windows?
- 21. Есть ли способ получить статус API Twitter?
- 22. Toggle Caps Lock On Tooltip на JTextField
- 23. Как я могу включить/выключить Caps Lock, Scroll Lock, Num Lock key программно на Linux
- 24. Как я могу включить/выключить Caps Lock, Scroll Lock и Num Lock Programmatically
- 25. Имитировать CAPS LOCK press в Xlib
- 26. Detect Caps Lock в Python проклятия
- 27. Caps Lock as Tmux prefix key
- 28. сделать Caps Lock на странице Load
- 29. Как переключить Caps Lock в VB.NET?
- 30. Как определить, включен ли Caps Lock в приложении Silverlight?
Некоторые клавиатуры даже не сообщают о состоянии клавиши блокировки колпачков; Qt может быть не единственной проблемой. –
Посмотрите это. [Qt - Поле пароля] [1]. Эта проблема уже обсуждалась там. [1]: http://stackoverflow.com/questions/2968336/qt-password-field – shan