Название: Нажатие PushButton с клавиатуры Отправлено: bekor от Апрель 16, 2012, 11:16 нужно чтобы при нажатии определенной кнопки на клаве вызивался метод pushbuttin->press()
а при отпускании pushbutton->release() подскажите пожалуйста как это реализовать Название: Re: Нажатие PushButton с клавиатуры Отправлено: mutineer от Апрель 16, 2012, 11:24 при обработке нажатия кнопки на клаве вызываешь
void QAbstractButton::click () [slot] Название: Re: Нажатие PushButton с клавиатуры Отправлено: bekor от Апрель 16, 2012, 12:00 а как писать этот обработчик ?
нужно ли подключить какую то библиотеку для клавиатуры ? p.s. мне нужен не click а нажатие и отпускание по отдельности Название: Re: Нажатие PushButton с клавиатуры Отправлено: Пантер от Апрель 16, 2012, 12:14 http://doc-snapshot.qt-project.org/4.8/qwidget.html#keyReleaseEvent
http://doc-snapshot.qt-project.org/4.8/qwidget.html#keyPressEvent Название: Re: Нажатие PushButton с клавиатуры Отправлено: bekor от Апрель 16, 2012, 22:04 Код: void MainWindow::keyPressEvent(QKeyEvent* event) вот так работает но есть одна проблема, если в место Key_W например писать Key_Left то работает только keyReleaseEvent ??? Название: Re: Нажатие PushButton с клавиатуры Отправлено: bekor от Апрель 16, 2012, 22:18 Разобрался 8)
надо было просто убрать фокус с кнопки. ui->pushButton->setFocusPolicy(Qt::NoFocus); Спасибо за подсказки... Название: Re: Нажатие PushButton с клавиатуры Отправлено: bekor от Апрель 18, 2012, 10:38 по ходу есть еще одна проблема,
если нажать и удерживать клавишу то спустя одну секунду постоянно происходит событие нажатия кнопки (как в текстовом редакторе) как сделать так чтобы при нажатии и удержании клавиши событие нажатия вызивалась только один раз ? и то же самое для отпускания Название: Re: Нажатие PushButton с клавиатуры Отправлено: Странник от Апрель 18, 2012, 10:50 по ходу есть еще одна проблема, добавь флаг нажатия на клавишу. устанавливай при keyPressEvent, очищай при keyReleaseEvent. игнорируй все keyPressEvent, если флаг установлен.если нажать и удерживать клавишу то спустя одну секунду постоянно происходит событие нажатия кнопки (как в текстовом редакторе) как сделать так чтобы при нажатии и удержании клавиши событие нажатия вызивалась только один раз ? и то же самое для отпускания Название: Re: Нажатие PushButton с клавиатуры Отправлено: GreatSnake от Апрель 18, 2012, 10:51 Код
Название: Re: Нажатие PushButton с клавиатуры Отправлено: bekor от Апрель 18, 2012, 11:05 Я тоже пробовал с флагом но флаг тут не катит так как оба Release и Press постоянно происходят
но я уже решил проблему :) вот так Код
|