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

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

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

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

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

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

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

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

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

在按键处右击选中go to slot,里面的clicked(),然后在里面写上,w=new class_name(参数)this->close() w是你当前窗口中包含的另一个窗口的类指针(即class_name类),参数既该类的构造函数中的参数。

QtGui中左键点击该按钮,右键点击按钮,选择转到槽,再选择click(),确定后自动生成槽函数,添加代码如下:

void Dialog::on_min_btn_clicked()

{

QWidget::showMinimized()

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11754027.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存