Qt中,当QWidget不是作为顶级窗体出现时,怎么让他显示关闭按钮呢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt中,当QWidget不是作为顶级窗体出现时,怎么让他显示关闭按钮呢相关的知识,希望对你有一定的参考价值。

如题,一个Widget是作为子窗体出现的,怎么添加关闭按钮呢
让黄色部分也有关闭按钮和标题栏

这么多年了被小白看到了,补一下空:

QWidget* w = new QWidget(this);是嵌入到父窗口的,根据Qt文档的描述:

“不嵌入在父部件中的小部件称为窗口。通常,windows有一个框架和一个标题栏“

这样子做是没有标题栏的。

要想有默认的标题栏,就不给它指定父窗口。当然这么做会打开两个窗口不再是嵌入。

想实现既嵌入又有标题栏又有关闭按钮,也可以自己实现就行了。QLabel或者QFrame做一个标题栏,再放一个button,连接按钮信号clicked()和this的槽close()。

没什么是自己实现不了,Qt的信号/槽,加上QPainter和样式表,想实现什么样都行。

参考技术A 一个widget默认是有关闭按钮的呢?难道你禁掉了?或者你的子窗体可以继承自Dialog之类的,哪样默认就会有的。最好能贴一下图或者代码追问

我是想让myWidget也显示标题栏和关闭按钮

以上是关于Qt中,当QWidget不是作为顶级窗体出现时,怎么让他显示关闭按钮呢的主要内容,如果未能解决你的问题,请参考以下文章

QMainWindow和QWidget分别作为主窗体时对Layout的影响

QT 窗体控件的透明度设置(三种方法)

Qt qwidget 瞬间出现和消失

Qt学习笔记2.窗体Widget && 屏幕坐标 && 布局

QT5之三大重要窗体

QT 窗体问题