在执行
this->setAttribute(Qt::WA_TranslucentBackground);
this->setWindowOpacity(1);
this->setWindowFlags(Qt::FramelessWindowHint | Qt::Tool | Qt::X11BypassWindowManagerHint);
使窗口透明了,怎么才能取消这个透明设置呢
请问在使窗口透明之后,怎么取消透明设置
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
H&A 2019-05-20 17:36关注MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);this->setAttribute(Qt::WA_TranslucentBackground); this->setWindowOpacity(1); this->setWindowFlags(Qt::FramelessWindowHint|Qt::Tool | Qt::X11BypassWindowManagerHint);}
MainWindow::~MainWindow()
{
delete ui;
}void MainWindow::on_pushButton_clicked()
{
//即使不撤销这个attribute,也可以
// this->setAttribute(Qt::WA_TranslucentBackground,false);this->centralWidget()->setAutoFillBackground(true); this->statusBar()->setAutoFillBackground(true); this->update();}
试一下这样
解决 无用评论 打赏 举报