搭建个人网站的步骤,做外贸 是否需要做中文网站,网站灰色代码,温州大凯工艺品有限公司英文网站本文章使用QWidget来使窗口置灰#xff0c;使用按钮控制置灰功能的开启和关闭#xff0c;同时被置灰的控件自动禁用交互功能。 connect(ui.pushButton_open, QPushButton::clicked, this, []() { //创建无边框窗口,大小是父的大小QWidget* parentWidget new QWidget… 本文章使用QWidget来使窗口置灰使用按钮控制置灰功能的开启和关闭同时被置灰的控件自动禁用交互功能。 connect(ui.pushButton_open, QPushButton::clicked, this, []() { //创建无边框窗口,大小是父的大小QWidget* parentWidget new QWidget(this, Qt::FramelessWindowHint);parentWidget-resize(this-size());parentWidget-setObjectName(widget);//设置蒙版背景色,其中140为蒙版透明度parentWidget-setStyleSheet(#widget {background-color:rgba(192, 192, 192, 140);});//将groupBox添加到layout中。这样groupBox就会被布局管理器管理自动调整大小和位置QGroupBox* groupBox ui.groupBox;QVBoxLayout* layout new QVBoxLayout(parentWidget);layout-addWidget(groupBox);//设置groupBox背景色跟蒙版颜色区分groupBox-setStyleSheet(QGroupBox { background-color: rgb(255, 255, 255); });groupBox-setParent(this); //将groupBox设置为父窗口groupBox-raise(); //将groupBox设置为顶层parentWidget-stackUnder(groupBox); //将parentWidget设置为groupBox的下层parentWidget-show(); //显示parentWidgetgroupBox-show(); //显示groupBoxui.textEdit-append(已置灰自动禁用交互功能);}); 以下功能是关闭置灰不会删除parentWidget对象 connect(ui.pushButton__close, QPushButton::clicked, this, []() {parentWidget-close();ui.textEdit-append(关闭置灰);});
头文件如下包含QGroupBox QVBoxLayout头文件定义parentWidget、groupBox、layout对象
#pragma once#include QtWidgets/QMainWindow
#include ui_QtWidgetsApplication1.h
#include QGroupBox
#include QVBoxLayoutclass QtWidgetsApplication1 : public QMainWindow
{Q_OBJECTpublic:QtWidgetsApplication1(QWidget *parent nullptr);~QtWidgetsApplication1();QWidget* parentWidget;QGroupBox* groupBox;QVBoxLayout* layout;
private:Ui::QtWidgetsApplication1Class ui;
};UI界面如下
效果如下 开启置灰 关闭置灰