同事演示了一個.NET的的PNG異形窗口.挺漂亮.於是也想用Delphi顯擺一個.
關於Delphi用PNG做異形窗口的資料有不少.都是用GDIPlus或者TPNGImage組件加載PNG圖像做的.
好在Delphi包裝了微軟的IWICImagingFactory接口,這樣處理PNG的工作就交給操作系統去做了.
函數很簡單一共就幾行,關鍵就是UpdateLayeredWindow.
用Delphi2010提供的IWICImagingFactory接口的包裝了,這次PNG的處理交給微軟的操作系統了,一點問題也沒有.其他版本的Delphi只要能對IWICImagingFactory進行包裝,也一樣能處理.但還是Delphi2010最方便.什麼控件也不用,多余的東西都不要.
代碼如下,很簡單吧:)