I tried to override the keyReleaseEvent function, but it causes a loop call due to the automatic repetition when holding down a key, and using isAutoRepeat doesn't work (on Linux X11), as it always returns false.
Reproduce code (Linux X11 only):
#include
#include
#include
#include
class Window : public QWidget {
public:
Window(QWidget* parent = nullptr): QWidget(parent) {}
void keyReleaseEvent(QKeyEvent* event) override {
if (!event->isAutoRepeat())//Normal on Windows
qDebug()
В настоящее время я считаю, что причина, как упоминалось в документации: < /p>
Обратите внимание, что если событие представляет собой сжатое событие с несколькими клавишами, которое частично связано с автоматической повторной>
Подробнее здесь: https://stackoverflow.com/questions/795 ... ased-in-qt
Как определить, действительно ли ключ был выпущен в QT? ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение