像今天的許多軟件應用程序一樣,我希望我的程序有一個無框窗口,仍然有一個陰影以使其更適合OS。第一步是將窗口標誌設置爲Qt::FramelessWindowHint
以刪除框架。但棘手的部分是在窗口外部添加投影。我選擇將QGraphicsDropShadowEffect
添加到更小的基本小部件中,該小部件可以容納所有內容,並通過將屬性Qt::WA_TranslucentBackground
設置爲true來使QMainWindow
變爲透明。替代QGraphicsDropShadowEffect無框窗口的陰影
這似乎是一個很好的解決方案,直到我添加了一個QSizeGrip
來啓用調整窗口大小。每次調整窗口大小時,都會調用繪畫事件,並且需要重新計算QGraphicsDropShadowEffect
。這會導致SUPER震盪調整大小,並導致性能下降。
QGraphicsDropShadowEffect
有更好的表現嗎?
顯示您的代碼,請 – eyllanesc
好吧,我編輯我的問題,希望能夠遵循的準則更好。 – mrg95