zoukankan      html  css  js  c++  java
  • Qt窗口操作函数(最大化,全屏,隐藏最大化,最小化)

    转自:https://blog.csdn.net/pamxy/article/details/9012221

    转自:http://blog.csdn.net/zhangshan415/article/details/8463532

    //Qt主窗口没有最小化,最大化按钮且最大化显示 

    int main(int argc, char *argv[]) 

    QApplication a(argc, argv); 

    TestQtForWinCE w; 

    w.setWindowFlags(w.windowFlags()& ~Qt::WindowMaximizeButtonHint& ~Qt::WindowMinimizeButtonHint); 

    w.showMaximized(); 

    return a.exec(); 

    }

    这里的“&~”是取反以后再按位与的意思,下面的“|”是按位或的意思

    //同时禁止最大化最小化按钮

    Qt::WindowMinMaxButtonsHint

    //也禁止关闭

    w.setWindowFlags(w.windowFlags() &~ (Qt::WindowMinMaxButtonsHint | Qt::WindowCloseButtonHint));

    Qt全屏显示函数        

    1、window.showFullScreen()//此方法只对顶级窗口有效,对子窗口无效

    2、yourwidget->setWindowFlags(Qt::window | Qt::FramelessWindowHint); 

       (第一个Qt::window表示此widget是窗口类型,第二个参数使用无框架就是没有标题,状态栏和边框)

    Qt最大化显示函数         window.showMaximized()

    Qt最小化显示函数         window.showMinimized()

    Qt固定尺寸显示函数         window.resize(x,y)

    子窗口全屏显示:

            QT中窗口部件QWidget成员函数showFullScreen();是用于将窗口部件全屏显示,但是他只对窗口模式的部件有用。子窗口的特征是 Qt::SubWindow,不是独立的窗口。因此对其调用showFullScreen()无效。通过对对子窗口调 用:setWindowFlags(Qt::Dialog);或setWindowFlags(Qt::Window);将其设为窗口模式后,即可调用 showFullScreen();进行全屏显示了。

            如果要还原为普通窗口,调用setWindowFlags(Qt::subwindow)将子窗口设置为非顶级窗口,再调用showNormal()还原子窗口显示。

    参考:

    相对于子窗口的全屏显示方法,不得不提的是子窗口退出全屏的方法。

    MFC中,子窗口退出全屏的方法简单直接,直接调用SetWindowPos()函数将子窗口显示到预定的位置即可。

    QT中,直接使用move和resize对窗口定位是没有效果的。需要先将子窗口设位非窗口模式。之后再将窗口移到理想位置。 

    即先调用setWindowFlags(Qt::Dialog);或者setWindowFlags(Qt::SubWindow);在调用move和resize函数。

    有人提到退出全屏时,调用showNormal(),再调setWindowFlags(Qt::SubWindow)。

    这有两个问题:1)showNormal()也是只对顶级窗口有效。2)可以考虑先调用showNormal()将窗口设为原来大小,在将窗口设为子窗口模式。但这样窗口回到父窗口之中也不会显示原来的大小。

    获取屏幕宽度和高度

    QApplication::desktop()->width()  ;

    QApplication::desktop()->height() ;

    即得到屏幕分辨率,如1024*768,800*600.

    本人时常将工作过程中用到的一些好的例子会装载写到博客中,希望对各位博友有帮助,有些博客文章也会自写工作中遇到的问题和解决方法。

  • 相关阅读:
    select、poll和epoll
    Linux 常用命令之文件和目录
    SmartPlant Review 帮助文档机翻做培训手册
    SmartPlant Foundation 基础教程 3.4 菜单栏
    SmartPlant Foundation 基础教程 3.3 标题栏
    SmartPlant Foundation 基础教程 3.2 界面布局
    SmartPlant Foundation 基础教程 3.1 DTC登陆界面
    SmartPlant Foundation 基础教程 1.4 SPF架构
    SmartPlant Foundation 基础教程 1.3 SPF其他功能
    SmartPlant Foundation 基础教程 1.2 SPF集成设计功能
  • 原文地址:https://www.cnblogs.com/feigen/p/11280723.html
Copyright © 2011-2022 走看看