欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Qt實現部件透明陰影效果與不規(guī)則窗體詳解

 更新時間:2023年01月06日 14:30:03   作者:霸道小明  
這篇文章主要為大家詳細介紹了Qt實現部件透明陰影效果與不規(guī)則窗體的相關方法,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下

透明效果

原始效果

設置整個窗體透明,調用setWindowOpacity( )方法,傳入一個0~1之間的值來表示透明度;1表示不透明,0表示完全透明

setWindowOpacity(0.5);//0~1之間

設置窗體透明,部件不透明

setWindowFlags(Qt::FramelessWindowHint);//無邊框
setAttribute(Qt::WA_TranslucentBackground);//透明

對單個部件設置透明

QGraphicsOpacityEffect *opacityEffect=new QGraphicsOpacityEffect;
opacityEffect->setOpacity(0.5);
ui->pushButton->setGraphicsEffect(opacityEffect);

設置窗體半透明

需要重寫paintEvent( )方法

在.h文件中添加:

protected:
    void paintEvent(QPaintEvent *event);

在方法重寫中

//重寫paintEvent方法,是實現窗體半透明
void MainWindow::paintEvent(QPaintEvent *event)
{
    QPainter painter(this);
    painter.fillRect(rect(),QColor(255,255,255,50));
}

之后設置窗體透明,部件不透明時就可以出現窗體班透明效果

setWindowFlags(Qt::FramelessWindowHint);//無邊框
setAttribute(Qt::WA_TranslucentBackground);//透明

陰影效果

通過QGraphicsDropShadowEffect類來設置陰影效果

QGraphicsDropShadowEffect *shadowEffect= new QGraphicsDropShadowEffect;
shadowEffect->setColor(QColor(100,100,100));//設置陰影顏色
shadowEffect->setBlurRadius(20);//設置陰影模糊半徑
shadowEffect->setOffset(20);//設置陰影偏移值
ui->pushButton->setGraphicsEffect(shadowEffect);

不規(guī)則窗體效果

將窗體外形設置成小黃人形狀

將準備好的小黃人png圖片添加到項目資源中

在頁面布局中添加一個Label標簽用來顯示圖片,應用程序大小設置成與圖片大學校一致。

在構造函數中初始化,通過setMask( )方法設置遮罩。

QPixmap pixmap;
pixmap.load(":/yellow.png");
ui->label->resize(pixmap.size());
resize(pixmap.size());
//設置遮罩
setMask(pixmap.mask());

重寫printEvent( )方法,將圖片繪制到應用程序上

到此這篇關于Qt實現部件透明陰影效果與不規(guī)則窗體詳解的文章就介紹到這了,更多相關Qt部件透明陰影 不規(guī)則窗體內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 內核線程優(yōu)先級設置的方法介紹

    內核線程優(yōu)先級設置的方法介紹

    本篇文章介紹了,內核線程優(yōu)先級設置的方法。需要的朋友參考下
    2013-05-05
  • ShellExecute函數用法的實例代碼

    ShellExecute函數用法的實例代碼

    ShellExecute函數用法的實例代碼,需要的朋友可以參考一下
    2013-03-03
  • 使用C/C++讀寫.mat文件的方法詳解

    使用C/C++讀寫.mat文件的方法詳解

    這篇文章主要為大家詳細介紹了使用C/C++讀寫.mat文件的方法,使用數據庫,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • C++?pthread入門指南

    C++?pthread入門指南

    pthread是C++98接口且只支持Linux,使用時需要包含頭文件#include?<pthread.h>,編譯時需要鏈接pthread庫,其中p是POSIX的縮寫,而POSIX是Portable?Operating?System?Interface的縮寫,這篇文章主要介紹了C++?pthread簡介,需要的朋友可以參考下
    2024-05-05
  • C/C++堆區(qū)專篇精講

    C/C++堆區(qū)專篇精講

    一直以來總是對這個問題的認識比較朦朧,我相信很多朋友也是這樣的,總是聽到內存一會在棧上分配,一會又在堆上分配,那么它們之間到底是怎么的區(qū)別呢,讓我們一起來看看
    2022-10-10
  • C語言學習進階篇之萬字詳解指針與qsort函數

    C語言學習進階篇之萬字詳解指針與qsort函數

    之前的指針詳解中,提到過qsort函數,這個函數是用來排序的,下面這篇文章主要給大家介紹了關于C語言指針與qsort函數的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-08-08
  • C++多態(tài)的示例詳解

    C++多態(tài)的示例詳解

    多態(tài)按字面的意思就是多種形態(tài)。當類之間存在層次結構,并且類之間是通過繼承關聯時,就會用到多態(tài)。本文將通過三個小案例讓大家更深入的了解一下C++的多態(tài),感興趣的可以了解一下
    2022-06-06
  • C++數據結構之實現鄰接表與鄰接矩陣的相互轉換

    C++數據結構之實現鄰接表與鄰接矩陣的相互轉換

    這篇文章主要為大家學習介紹了C++如何實現鄰接表與鄰接矩陣的相互轉換,文中的示例代碼簡潔易懂,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-07-07
  • C++ Struct結構體用法淺析

    C++ Struct結構體用法淺析

    前邊我們所定義的類,均是使用struct關鍵字來定義,但是C++中真正用于定義類的關鍵字為class,因為要C++兼容C,所以保留struct關鍵字,struct與class的用法完全相同
    2023-03-03
  • C語言代碼實現掃雷游戲

    C語言代碼實現掃雷游戲

    這篇文章主要為大家詳細介紹了C語言代碼實現掃雷游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02

最新評論