QT鍵盤操作函數摘要:

QT鍵盤操作函數摘要:

setFocusPolicy(Qt::ClickFocus);  //設置這個窗口部件接收鍵盤焦點的方式

void keyPressEvent ( QKeyEvent * event );

void keyReleaseEvent ( QKeyEvent * event );

if(event->key()==Qt::Key_F1)

void glWidget::keyPressEvent(QKeyEvent *event)

{

  switch(event->key())

  {

  case Qt::Key_F1:

      QMessageBox::information(this,tr("測試"),tr("你按F1鍵了"));

      break;

  case Qt::Key_F2:

      QMessageBox::information(this,tr("測試"),tr("你按F2鍵了"));

      break;

  case Qt::Key_F3:

      QMessageBox::information(this,tr("測試"),tr("你按F3鍵了"));

      break;

  default:

      break;

  }

}

void glWidget::mousePressEvent(QMouseEvent *event)

{

   if (event->button() == Qt::LeftButton){

       if ( QApplication::keyboardModifiers () == Qt::ControlModifier){

           QMessageBox::information(this,tr("測試"),tr("你按ctrl並單擊左鍵了")); 

       }

   }

}

void glWidget::keyPressEvent(QKeyEvent *event)

{

   if (event->modifiers() == (Qt::ShiftModifier | Qt::ControlModifier) && event->key() == Qt::Key_A){

       QMessageBox::information(this,tr("測試"),tr("同時按下了shift+ctrl+a"));

   }

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章