转:lizhenneng
- 将要全屏的QT主窗口中的子窗口调用函数setWindowFlags(Qt::Dialog),然后调用showFullScreen()将子窗口全屏显示,也就是先将子窗口设为顶级窗口,然后全屏显示,因为showFullScreen()只对顶级窗口有效;
- 如要还原为普通窗口,调用setWindowFlags(Qt::subWindow)将子窗口设为非顶级窗口,再调用showNormal()还原子窗口正常显示。
自己实验了下,自己只需要将主窗口全屏与退出
全屏用到
w.showFullScreen(); //全屏
按esc 退出时只要重写程序keyPressEvent的事件
protected:
void keyPressEvent(QKeyEvent *event);
void S10::keyPressEvent(QKeyEvent *event)
{
// 响应Esc键以退出程序
if (event->key() == Qt::Key_Escape)
{
showMaximized(); //窗口最大化
}
}