德阳市网站建设_网站建设公司_JavaScript_seo优化
2025/12/31 10:28:19 网站建设 项目流程

亮个像吧

当我们想要完全自定义窗口风格时,

总是免不了要移除Windows自带的边框,

去掉了边框也去掉了窗口大小调整功能,

如果不想自己去实现麻烦的鼠标事件时,

不妨试试QSizeGrip。

1 窗口设置无边框

一行代码搞定

this->setWindowFlags(Qt::FramelessWindowHint);

2 四个角落添加QSizeGrip

用一个垂直布局和两个水平布局

QHBoxLayout* hBox = new QHBoxLayout; hBox->setSpacing(0); hBox->setMargin(0); hBox->addWidget(new QSizeGrip(this)); hBox->addItem(new QSpacerItem(20,20, QSizePolicy::Expanding)); hBox->addWidget(new QSizeGrip(this)); QHBoxLayout* hBox2 = new QHBoxLayout; hBox2->setSpacing(0); hBox2->setMargin(0); hBox2->addWidget(new QSizeGrip(this)); hBox2->addItem(new QSpacerItem(20,20, QSizePolicy::Expanding)); hBox2->addWidget(new QSizeGrip(this)); QVBoxLayout* vBox = new QVBoxLayout; vBox->setSpacing(0); vBox->setMargin(0); vBox->addLayout(hBox); vBox->addItem(new QSpacerItem(20,20, QSizePolicy::Minimum, QSizePolicy::Expanding)); vBox->addLayout(hBox2); this->setLayout(vBox);

此时的情况

3 隐藏QSizeGrip

如果不想让QSizeGrip直接显示出来,

可以通过QSS的方式

QSizeGrip { background-color: transparent; width: 20px; height: 20px; }

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询