1、QT中窗口部件QWidget成员函数showFullScreen();是用于将窗口部件全屏显示。

但是他只对窗口模式的部件有用。子窗口的特征是 Qt::SubWindow,不是独立的窗口。因此对其调用showFullScreen()无效。

通过对对子窗口调 用:setWindowFlags(Qt::Dialog);或setWindowFlags(Qt::Window);将其设为窗口模式后,即可调用 showFullScreen();进行全屏显示了。

2、子窗口大小属性是父窗口管理的,可以通过取得QMdiSubWindow来设置:

void MainWindow::createViewDataImpl()

{

//ViewDataImpl,自己定义的窗口,属于Dialog类型

ViewDataImpl *win = new ViewDataImpl(this);

mdiArea->addSubWindow(win);

win->show();

mdiArea->activeSubWindow()->resize(700,200);  //关键句子

}

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

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

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

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

若果退出全屏时,调用showNormal(),再调setWindowFlags(Qt::SubWindow)。

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

linux qt应用程序全屏,QT中MDI应用程序中更改子窗口大小或是全屏显示子窗口的方法...相关推荐

  1. ssd win7 linux找不到硬盘,我的电脑找不到固态硬盘的盘符怎么办|固态硬盘没有显示盘符解决方法-系统城...

    在电脑上装上SSD固态硬盘之后,打开计算机或我的电脑,默认都会看到固态硬盘的盘符,不过有些用户遇到问题,明明已经装了固态硬盘,但是就是找不到固态硬盘的盘符,这是怎么回事呢?固态硬盘没有显示盘符原因有很 ...

  2. linux qt应用程序全屏,QT在ubuntu下实现界面全屏,侧边栏隐藏,上边栏隐藏【实例】...

    最近做一个Qt项目(ubuntu 14.04),需要将界面全屏,全屏之后,ubuntu侧边栏隐藏,上边栏也隐藏,只显示Qt的界面. 那么先介绍几个函数: Qt全屏显示函数:showFullScreen ...

  3. QT中串口通信程序(转)

    (说明:我们的编程环境是windows xp下,在Qt Creator中进行,如果在Linux下或直接用源码编写,程序稍有不同,请自己改动.) 在Qt中并没有特定的串口控制类,现在大部分人使用的是第三 ...

  4. C++中运行一个程序的内存分配情况及qt中的内存管理机制

    一个由c/C++编译的程序占用的内存分为以下几个部分 1.栈区(stack)- 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等.其操作方式类似于数据结构中的栈. 2.堆区(heap) - 一 ...

  5. QT中关闭应用程序和窗口的函数(quit(),exit()以及close()的区别)

    QT中关闭应用程序和窗口的函数(quit(),exit()以及close()的区别) 使用QT编辑界面,其中带来很大方便的一点就是Qt中自带丰富的.种类齐全的类及其功能函数,程序员可以在编辑程序的过程 ...

  6. Qt中修改应用程序和标题栏的图标

    一.修改应用程序图标 1.新建一个my.txt文件,打开后在其中加一句 "IDI_ICON1 ICON DISCARDABLE "应用程 序图标.ico"".( ...

  7. Linux使用cmake编译项目,如何使用cmake在linux中构建Qt项目(How to build Qt project in linux with cmake)...

    如何使用cmake在linux中构建Qt项目(How to build Qt project in linux with cmake) 我使用的是ubuntu 14.04,cmake 2.8.12.2 ...

  8. linux系统编译qt代码需要编译qt,linux下如何静态编译QT库,以及如何静态编译自己的程序...

    Qt采用编译的方式安装的时候,配置中默认的编译方式是动态编译的,但是有时候你编写的程序要发布出去,带很多动态库文件是很繁琐的,此时就需要静态编译你的程序,Qt要实现静态编译必须库文件也是静态编译的,所 ...

  9. Qt程序添加音乐和音效,解决QtCreator中给程序添加音乐失败的问题

    Qt程序添加音乐和音效,解决QtCreator中给程序添加音乐失败的问题 最近写了个Qt小游戏,希望添加个背景音乐,却失败了很多次,下面总结一下经验. 添加音乐或者音效一般需要使用multimedia ...

最新文章

  1. Ubuntu18.04 + Nvida GTX 1660ti显卡 驱动安装
  2. 这5家纳米技术公司正在推动医疗检测的变革
  3. IAS的工作原理(一)作为 RADIUS 服务器的 IAS
  4. AD备份文件安装额外域控制器
  5. Python操作excel进行插入、删除行操作实例演示,利用xlwings库实现
  6. 电脑计算机的硬盘那些可以删除吗,我的电脑出现多个可移动磁盘该怎么删除?...
  7. pymysql 增删改 查 索引
  8. Windows10上安装Kali并设置apt源
  9. ebs r12多少钱 实施oracle_Oracle EBS实施具体是做什么
  10. nltk 中的 sents 和 words
  11. (转)Rust: 在vscode配置 Rust 开发环境
  12. 572g装固态 acer v3_联想 thinkpad R60E 0658DE2 升级SSD 固态硬盘方案?宏碁V3-572G-51MR光驱位加装固态硬盘应该买什么样接口类型的...
  13. PRINCE2和PMP体系架构有何区别
  14. 如何搭建一个论坛社区网站?
  15. android小程序题目,我要出题app-我要出题小程序预约 _5577安卓网
  16. catia二次开发:函数
  17. SMART硬盘检测参数详解
  18. 第三章 Elasticsearch Query DSL -- 查询
  19. PDF添加页码的工具有什么 PDF添加页码的小窍门
  20. TensorFlow2.0保存模型

热门文章

  1. opencv30-图像矩
  2. python各种库安装
  3. Python之日志处理(logging模块)详解
  4. 黑盒测试概念简述,黑盒测试优缺点、黑盒用例设计方法简单介绍及黑盒测试方法使用总结
  5. HDU - 6183 Color it 2017广西邀请赛(线段树)
  6. 设计模式之 - 代理模式(Proxy Pattern)
  7. Mariadb使用总结
  8. 通过日志恢复MSSQL数据例子
  9. Oracle10g数据库的树立
  10. 洛谷 P3367 ---- 【模板】并查集