Qt 设置窗体透明

一、前言

  在音频开发中,窗体多半为半透明、圆角窗体,如下为Qt 5.5 VS2013实现半透明方法总结。

二、半透明方法设置

  1、窗体及子控件都设置为半透明

  1)setWindowOpacity(0.8);//参数范围为0-1.0,通过QSlider控件做成透明度控制条

本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QSS,OpenCV,Quick模块,面试题等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓↓  

  2)无边框设置

  setWindowFlags(Qt::FramelessWindowHint);

  3)窗体圆角设置

  setAttribute(Qt::WA_TranslucentBackground);
  通过paintEvent绘制窗体背景色与圆角
  void Widget::paintEvent(QPaintEvent *event)
  {
    QPainter painter(this);
    painter.setRenderHint(QPainter::Antialiasing); // 反锯齿;
    painter.setBrush(QBrush(QColor("#616F76")));  //窗体背景色
    painter.setPen(Qt::transparent);
    QRect rect = this->rect();        //rect为绘制大小
    rect.setWidth(rect.width() - 1);
    rect.setHeight(rect.height() - 1);
    painter.drawRoundedRect(rect, 15, 15);  //15为圆角角度
    //也可用QPainterPath 绘制代替 painter.drawRoundedRect(rect, 15, 15);
    //QPainterPath painterPath;
    //painterPath.addRoundedRect(rect, 15, 15);//15为圆角角度
    //painter.drawPath(painterPath);
    QWidget::paintEvent(event);
  }

2、通过图片贴图,设置局部透明

  1)窗体设置

你可能感兴趣的:(qt,数据库,开发语言,c++,c语言)