我使用以下代码在全屏和最大化窗口之间切换,
void MainWindow::keyPressEvent(QKeyEvent *e)
{
if ((e->key()==Qt::Key_Enter) && (e->modifiers()==Qt::AltModifier))
this->setWindowState(Qt::WindowFullScreen);
if (e->key()==Qt::Key_Escape)
if(isFullScreen())
this->setWindowState(Qt::WindowMaximized);
}
但这不起作用。任何研究都可以告诉我这里有什么问题吗?
答案 0 :(得分:0)
也许您不应该使用Alt + Enter。
您可以将密钥更改为Alt + F或其他'因为Alt + Enter实际上不起作用。
答案 1 :(得分:0)
你不应该使用:
e->modifiers()==Qt::AltModifier
检查键修饰符,因为modifiers()函数返回标志。 使用类似的东西:
e->modifiers()&Qt::AltModifier
或
(e->modifiers()&Qt::AltModifier)==Qt::AltModifier