Qt之陰影邊框

2021-06-22 13:51:00 字數 978 閱讀 4664

陰影邊框很常見,諸如360以及其他很多軟體都有類似效果,

了解css3的同學們應該都知道

box-shadow,它就是來設定陰影效果的,

那麼qt呢?看過一些資料,說是qss是基於css2的,既然如此,box-shadow是基於css3的!那麼qt定然就用不了!

搜了一些資料,每張都做成陰影效果的固然不可能,直接捨棄(即使可以,也不採納)。如果實時的去畫圖,效率太低,最後選擇了拼圖的方式!

效果如下:

左上角、左下角、右上角、右下角、上、下、左、右,這幾個方向都繪製對應的圖即可!

#include "shadow_widget.h"

shadowwidget::shadowwidget(qwidget *parent)

: qdialog(parent)

shadowwidget::~shadowwidget()

void shadowwidget::paintevent(qpaintevent *event)

void shadowwidget::drawshadow(qpainter &painter)

寫乙個公共的類,如果視窗要實現陰影效果直接繼承就行了!

shadow_width為陰影邊框的畫素,可以根據自己的需求自由調節!

也可使用

qgraphicsdropshadoweffect來實現。。。

更多參考:

注:

╰☆奮鬥ing❤孩子`

原文:。

QT邊框陰影效果

方法一 this setattribute qt wa translucentbackground 邊框陰影效果 qgraphicsdropshadoweffect effect new qgraphicsdropshadoweffect effect setblurradius 6 effect ...

QT實現無邊框效果以及邊框陰影效果

qtwidget視窗優化 原始的qwidget視窗看著特別不舒服,於是自己嘗試著寫了乙個小的demo對qwidget進行了乙個優化 效果圖 外圍邊框去除,並且加上邊框陰影 實現視窗陰影效果 widget widget qwidget parent qwidget parent ui new ui w...

Qt無邊框視窗拖拽和陰影

只需要一行 即可實現 及執行效果 先要去qwidget裡面找到滑鼠事件函式 理一下座標的位置情況 左上角 螢幕的左上角 中間的視窗 程式的視窗 箭頭 滑鼠位置 座標位置滿足 x y z 在designer裡面拖乙個widget出來叫shadowwidget shadowwidget的顏色為灰色,我們...