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鍵"));
}
}