中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現C++語言中的毛玻璃效果

發布時間:2021-10-27 18:00:33 來源:億速云 閱讀:462 作者:柒染 欄目:編程語言

今天就跟大家聊聊有關如何實現C++語言中的毛玻璃效果,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

在基于Windows Vista的普通Windows應用程序及對話框程序中,如何利用C++語言來生成Aero毛玻璃效果,此處使用的是Beta 2版本的Vista及Windows SDK,現在就讓大家看一下震撼的效果吧。

一些API在細節上會有所變化。另外,文中沒有使用MFC,全部例子用WTL 7.5生成,其可在http://wtl.sourceforge.net/下載得到,雖然此處使用的是Visual C++ 2003,但Visual C++ 2005也類似。

Aero主題及毛玻璃效果,是隨同Vista"桌面窗口治理(DWM)"而來的新特性,也是微軟市場推廣的一個重心,在應用程序中集成毛玻璃效果,當打開Aero主題時,程序看上去會顯得非常與眾不同--很酷,對吧。

Aero主題中的毛玻璃效果

當以Aero為主題時,Vista會根據計算機顯卡進行判定是否開啟毛玻璃效果,此時桌面由DWM進行繪制,而DWM使用一個composition進程來渲染桌面,其會在頂層窗口的非客戶區自動使用Aero主題元素(有點類似于Windows XP)。又說回來,也不是總會添加這些毛玻璃效果的,假如計算機運行于"電池模式",或用戶決定關閉透明效果,那么非客戶區就不會有毛玻璃效果了,如下圖所示。

假如在控制面板的可視效果中打開了透明玻璃效果,那非客戶區看上去就像下圖這樣:

如何實現C++語言中的毛玻璃效果

請留意,記事本的邊框呈現綠色調,這是墻紙透過來的顏色,并且也可以透過標題欄看到桌面的一些圖標。我們在編寫代碼的時候,要害只須留意composition是否打開,而不是設置了什么毛玻璃效果,因為DWM會處理毛玻璃效果繪制的部分。

項目開始

***個示例程序是不帶視窗口、工具條、狀態條的SDI應用程序,在運行完WTL AppWizard之后,***件事就是設置stdafx.h中的#define,以便利用Vista的新特性。Vista的Windows版本為6,且Vista中IE的版本為7,設置完成后應像下面這樣:

如何實現C++語言中的毛玻璃效果

在GetThemeTextMetrics() API中的轉換,是對Platform SDK的uxtheme.h中錯誤的修正,然而,Windows SDK卻沒有這個錯誤,所以這個轉換導致了一個錯誤,可刪除函數中的這個轉換,其他三個也同樣。 添加邊框的毛玻璃效果。

看完上述內容,你們對如何實現C++語言中的毛玻璃效果有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

绥棱县| 宁津县| 尤溪县| 桦川县| 山东省| 应用必备| 成武县| 景泰县| 冕宁县| 武功县| 通海县| 新干县| 昌平区| 日喀则市| 青州市| 探索| 驻马店市| 农安县| 普洱| 泰顺县| 余庆县| 盐城市| 阿克陶县| 绥宁县| 巴彦淖尔市| 镇远县| 祁连县| 建昌县| 克什克腾旗| 福安市| 苍山县| 博爱县| 涡阳县| 逊克县| 宽甸| 广安市| 崇仁县| 孝义市| 育儿| 沙洋县| 广灵县|