crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QGraphicsView + KeyPress Event
Гость_DerKetzer_*
сообщение 6.11.2011, 22:44
Сообщение #1





Гости








    


Доброго времени суток,
Решил поделать курсач. Для этого выбрал библиотеку QT(раньше с ней дело не имел)...
Пытаюсь создать небольшую игрушку. Для этого использую QPainter + QGraphicsView + QGraphicsScene. Как рисовать я понял... Но как считывать нажатие клавиш?

Код main'a:

int main(int argc, char **argv)
{
     QApplication app(argc, argv);
     qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
     QGraphicsScene scene;
     QGraphicsView view;
     for (int i = 0; i < 8; ++i) {
     Tanks *tank= new Tanks;
     scene.addItem(tank);
     }
     view.show();
     return app.exec();
}


Если вставить функцию:

void QGraphicsView::KeyPressEvent(QKeyEvent* event){
    if(event->key()==Qt::Key_W) {
         //Do Smth
    }
}


То при нажатии на 'W' ничего не происходит.

Помогите нубасу пожалуйста! :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
ViGOur
  опции профиля:
сообщение 25.1.2012, 12:49
Сообщение #2


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(processOneThing()));
timer->start();
где processOneThing твоя функция член класса, которая вызывается каждый раз, когда происходит событие таймера...

Смотри: QTimer - Подробное описание
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 3.12.2024, 15:20