Qt设置最大化最小化和关闭

窗口如果继承<kbd>QDialog</kbd>,那窗口就只有关闭按钮;如果继承<kbd>QWidget</kbd>,那么就有关闭,最大化,最小化三个按钮,如何个性化定制这三个按钮呢,解决方案是void setWindowFlags ( Qt::WindowFlags type )

setWindowFlags ( Qt::WindowFlags type )
Qt::FrameWindowHint://没有边框的窗口
Qt::WindowStaysOnTopHint://总在最上面的窗口
Qt::CustomizeWindowHint://自定义窗口标题栏,以下标志必须与这个标志一起使用才有效,否则窗口将有默认的标题栏
Qt::WindowTitleHint://显示窗口标题栏
Qt::WindowSystemMenuHint://显示系统菜单
Qt::WindowMinimizeButtonHint://显示最小化按钮
Qt::WindowMaximizeButtonHint://显示最大化按钮
Qt::WindowMinMaxButtonsHint://显示最小化按钮和最大化按钮
Qt::WindowCloseButtonHint://显示关闭按钮 

1.取消最大化按钮

这个需求是我们设计软件过程中常常希望得到的,在构造函数中输入

this->setWindowFlags(Qt::WindowMinimizeButtonHint|Qt::WindowCloseButtonHint);

2.取消最小化按钮

this->setWindowFlags(Qt::WindowMaximizeButtonHint|Qt::WindowCloseButtonHint);

3.取消最大最小化按钮

this->setWindowFlags(Qt::WindowCloseButtonHint);

关闭窗口时显示提示框

在主窗口中重写CloseEvent事件

void Widget::closeEvent(QCloseEvent::event){
	int res = QMessageBox::question(this, "确定",“你要关闭吗”, "是", "否")if (res ==1){
		event -> ignore();
	}
}

全部评论

相关推荐

好消息是活的像个人了,周末可以约会吃饭打游戏了坏消息是钱没了,当初来小红书就是为了钱啊哭笑不得😭
犯困嫌疑人:好事儿啊,取消大小周能有更多自己的时间,周末还能约对象玩,这不美滋滋?
投递小红书等公司8个岗位 > 小红书取消大小周
点赞 评论 收藏
分享
03-07 13:32
门头沟学院 C++
未来可欺a:读研吧,这简历只适合学历高的,本科大概率只能干开发,你这个简历开发不匹配,算法和深度学习的话学历又不够
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务