原文:如何在pyqt中實現窗口磨砂效果

磨砂效果的實現思路 這兩周一直在思考怎么在pyqt上實現窗口磨砂效果,網上搜了一圈,全都是 C 的實現方法。正好今天查python的官方文檔的時候看到了 ctypes 里面的 HWND,想想倒不如換一條思路:讓 C 幫我做磨砂的事情,而我只需要在python中調用 dll 中的接口函數就行了。需要注意的是,要想成功調用這個dll必須安好MSVC,不想安的話可以參見 如何在pyqt中通過調用SetW ...

2021-04-11 14:56 0 282 推薦指數:

查看詳情

何在pyqt實現亞克力磨砂效果的QLabel

前言 Windows10 在 UWP 應用中支持亞克力畫刷,可以在部件的底部繪制亞克力效果的背景圖。下面我們使用 QLabel 來模擬這個磨砂過程。 實現方法 MSDN 文檔中介紹了亞克力材料的配方,包括:高斯模糊、亮度混合、色調混合和噪聲紋理。 高斯模糊 我們先來實現高斯模糊的效果 ...

Thu Jan 06 03:19:00 CST 2022 2 932
何在pyqt實現win10亞克力效果

亞克力效果實現思路 上一篇博客《如何在pyqt實現窗口磨砂效果實現了win7的Aero效果,但是和win10的亞克力效果相比,Aero還是差了點內味。所以今天早上又在網上搜了一圈,無意中發現了這篇博客《使用 SetWindowCompositionAttribute 來控制程序 ...

Mon Apr 12 01:10:00 CST 2021 2 308
何在pyqt通過調用 SetWindowCompositionAttribute 實現Win10亞克力效果

亞克力效果 在《如何在pyqt實現窗口磨砂效果》和《如何在pyqt實現win10亞克力效果,我們調用C++ dll來實現窗口效果,這種方法要求電腦上必須裝有MSVC。Visual Studio裝起來確實費時又占C盤空間,所以今天在python中直接調用 ...

Sun Apr 11 22:03:00 CST 2021 0 605
何在pyqt給無邊框窗口添加DWM環繞陰影

前言 在之前的博客《如何在pyqt通過調用SetWindowCompositionAttribute實現Win10亞克力效果,我們實現窗口的亞克力效果,同時也用SetWindowCompositionAttribute() 給亞克力窗口加上了陰影。但是更多時候我們用不到亞克力效果,但又 ...

Sun Apr 11 23:58:00 CST 2021 0 249
何在pyqt實現平滑滾動的QScrollArea

平滑滾動的視覺效果 Qt 自帶的 QScrollArea 滾動時只能在兩個像素節點之間跳變,看起來很突兀。剛開始試着用 QPropertyAnimation 來實現平滑滾動,但是效果不太理想。所以直接開了定時器,重寫 wheelEvent() 來實現平滑滾動。效果如下: 實現思路 定時器 ...

Sun Apr 11 23:35:00 CST 2021 0 521
何在 pyqt 實現全局事件總線

前言 在 Qt 可以使用信號和槽機制很方便地實現部件之間的通信,考慮下面這樣的場景: 我想要點擊任意一個專輯卡並通知主界面跳轉到專輯界面,那么一種實現方式如上圖所示:點擊任意一個藍色方框所示的專輯卡,發出 switchToAlbumIntetrfaceSig 給父級部件專輯卡視圖 ...

Sun Feb 13 08:25:00 CST 2022 3 600
何在pyqt自定義無邊框窗口

前言 之前寫過很多關於無邊框窗口並給窗口添加特效的博客,按照時間線羅列如下: 如何在pyqt實現窗口磨砂效果何在pyqt實現win10亞克力效果何在pyqt通過調用SetWindowCompositionAttribute實現Win10亞克力效果何在pyqt ...

Thu Apr 15 05:28:00 CST 2021 0 984
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM