[英]can't handle QKeyEvent in Qt C++ when digit and number keys are pressed
我想在用戶按下鍵盤鍵時做一些特定的事情。為此,我的程序中使用qt和C ++編寫了以下代碼:
//reimplemented keyPressEvent
// MyWindow inherits from QWidgets
void MyWindow::keyPressEvent(QKeyEvent *e)
{
if(e->key()== Qt::Key_3)
{
//do something
QApplication::exit(1);
std::cout << " presses\n";
}
}
但是此代碼無法正常工作。
void MyWindow::keyPressEvent(QKeyEvent *e)
{
if(e->key()== Qt::Key_Escape)
{
QApplication::exit(1);
std::cout << " presses\n";
}
}
為什么會這樣呢?
將qDebug() << e->key()
到方法的開頭,然后確切地看到您得到的是:)。 最有可能的是,該窗口未獲取事件,但當前聚焦的窗口小部件卻獲取了事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.