一、窗口置顶 与 取消置顶

void MainWindow::on_windowTopButton_clicked()
{if (m_flags == NULL){m_flags = windowFlags();setWindowFlags(m_flags | Qt::WindowStaysOnTopHint);this->show();}else{m_flags = NULL;setWindowFlags(m_flags);this->show();}
}

二、全屏显示 与 退出全屏

首先,在QT中对于窗口显示常用的有这么几个方法可以调用:

showFullScreen() // Qt全屏显示函数
showMaximized() // Qt最大化显示函数
showMinimized() // Qt最小化显示函数
resize(x, y) // Qt固定尺寸显示函数
setMaximumSize(w, h) // Qt设置最大尺寸函数
setMinimumSize(w, h) // Qt设置最小尺寸函数

但是 showFullScreen()showNormal() 只对顶级窗口有效果,对子窗口无效。要将子窗口全屏显示可用以下方法:

  • 将要全屏的 Qt 子窗口调用 setWindowFlags(Qt::Window) 将其类型提升为顶级窗口模式,然后调用 showFullScreen() 函数将子窗口全屏显示。
  • 当然全屏后还要恢复正常,即调用 setWindowFlags(Qt::subwindow) 将子窗口设置为非顶级窗口,再调用 showNormal() 还原子窗口显示。
// 全屏显示:
VideoWidget->setWindowFlags(Qt::Window);
VideoWidget->showFullScreen();// 退出全屏时:
VideoWidget->setWindowFlags(Qt::SubWindow);
VideoWidget->showNormal();

三、窗口的 "最大化\最小化\关闭" 按钮设置

1、在 QDialog 中添加 "最大化" 和 "最小化"按钮

在使用 QDialog 时,默认情况下只有 “这是什么” 和 “关闭” 按钮,但是我们习惯有最大化和最小化按钮。这里介绍如何在该模式下如何设置。

this->setWindowFlags(Qt::Dialog | Qt::WindowMinMaxButtonsHint | Qt::WindowCloseButtonHint);

其中 WindowMinMaxButtonsHint 设置的就是最大和最小按钮,但是只这样设置,关闭按钮就不可用了,因此需要再添加 WindowCloseButtonHint 一项。

2、只禁止最大化按钮

this->setWindowFlags(windowFlags() &~ Qt::WindowMaximizeButtonHint);

Qt::WindowMaximizeButtonHintWindowType 枚举变量,通过修改它可以选择禁止 "最小化" 或者 "关闭" 按钮。

四、禁止拖动窗口大小

this->setFixedSize(this->width(),this->height());

五、获取屏幕的宽度和高度

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

即得到屏幕分辨率,如 1024*768。

转载于:https://www.cnblogs.com/linuxAndMcu/p/11533636.html

Qt 窗口操作函数(置顶、全屏,最大化最小化按钮设置等)相关推荐

  1. Qt窗口操作函数(最大化,全屏,隐藏最大化,最小化)

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

  2. Q窗口操作函数(窗口最大化,全屏,隐藏最大化最小化按钮)

    Qt窗口中的一些小技术总结 //Qt主窗口没有最小化,最大化按钮且最大化显示  int main(int argc, char *argv[]) { QApplication a(argc, argv ...

  3. Qt 窗口的一些简单设置-标题、图标、最大化最小化按钮、任务栏图标

    一些很零散的窗体控制方法,在这总结一些. 1.更改窗体标题 this->setWindowTitle("窗体标题"); 窗体标题"就是更改的窗体标题 2.控制窗体大 ...

  4. VMWare 全屏后最小化死机

    VMWare 全屏后最小化死机 今天在vmware7上安装ubuntu10.10,为编译opendjk做准备.在精简系统的时候,全屏vmware后,在最小化就死机了. 自己都用这个vmware安装了1 ...

  5. Qt之界面实现技巧——包括任务栏不显示,自定义窗体,最大化最小化按钮等等全面总结

    总结一下,在开发Qt的过程中的一些技巧!可遇而不可求... 一.主界面 1.窗口 最小化 最大化 关闭按钮.显示状态自定义 setWindowFlags(Qt::CustomizeWindowHint ...

  6. WinForm隐藏窗口控制最大化最小化按钮

    设置对窗口大小不能调整 找到[FormBorderStyle]选项,在选项列表中选择[FixedDialog],这样就可以固定窗口大小,禁止对窗口的自由调整了. 隐藏窗口的最大化和最小化按钮: 在选项 ...

  7. 运行python程序的cmd窗口置顶状态和与最小化有什么区别

    运行python程序的cmd窗口置顶状态表示该窗口将一直保持在其他窗口的最上面,即使用户在操作其他窗口时也能看到它.而最小化则表示该窗口将被隐藏,用户需要在任务栏中寻找并打开它.

  8. Qt去掉最大化最小化按钮和最大化

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

  9. qt widget 最大_Qt窗口操作函数(最大化,全屏,隐藏最大化,最小化)

    //Qt主窗口没有最小化,最大化按钮且最大化显示 int main(int argc, char *argv[]) { QApplication a(argc, argv); TestQtForWin ...

最新文章

  1. 修改sms_def的MOF文件收集网络共享信息
  2. c#_textbox显示刷新规定行数的数据
  3. 计算机动画火柴人作业,(Flash期末作品综合实验报告.doc
  4. 如何用 React Native 创建一个iOS APP?(二)
  5. 方程组求解matlab实现(朴素高斯求解、LU分解、雅可比迭代方法、高斯-塞德尔方法、连续过松弛(SOR))
  6. javascript进阶教程第二章对象案例实战
  7. The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]
  8. 正则表达式matches_正则表达式在VBA中间是如何应用?正则表达式的实现方式?...
  9. tomcat配置文件详解
  10. [翻译]Writing Custom Wizards 编写自定义的向导
  11. ROS入门(八) make_plan的Server连接
  12. 4 月 29 日晚 8 点,为你揭秘联邦学习背后数据可用不可见的奥秘
  13. c语言英美姓名,英美常用人名——C-D
  14. vmware安装macos
  15. ArcGIS学习(一)——如何绘制一幅流域图
  16. python每日一记目标
  17. 搭建一个网站步骤 制作网页完整步骤
  18. kubectl自动补全
  19. 李开复:非一流学校学生的出路-李开复经验集-IT人物-酷勤网
  20. Xilinx SDx 2018.3安装

热门文章

  1. JavaScript学习笔记(O)——浏览器内核介绍
  2. c语言微信协议源码,微信强制加入群软件!易语言协议版,公开源码
  3. java仿qq_「java qq」仿QQ聊天软件java实现(一) - seo实验室
  4. 简单记录Java的AES128加密和解密
  5. 雷达ADS-B信号覆盖评估系统-SRTM高程数据可视化处理
  6. RealNetworks vs. 微软:早期流媒体行业之争
  7. leetcode6-zigzag conversion
  8. SD卡/MMC卡学习视频教程
  9. Bidirectional Machine Reading Comprehension for Aspect Sentiment Triplet Extraction 论文阅读
  10. Thinkphp开发的云盘宝网盘赚钱系统源码/仿蓝奏百度网盘限速下载系统/分享赚钱网盘系统