這可能嗎?我真的想讓我的wxPython程序(因爲他們只能在windows上工作)使用玻璃主題。Vista/7全玻璃風格與wxPython
另外,如果可能的話,有沒有辦法讓對話框在Vista中看起來像那些新的對話框,而不需要編寫大量的自定義內容?
alt text http://imgkk.com/i/soYWuf.jpg
這可能嗎?我真的想讓我的wxPython程序(因爲他們只能在windows上工作)使用玻璃主題。Vista/7全玻璃風格與wxPython
另外,如果可能的話,有沒有辦法讓對話框在Vista中看起來像那些新的對話框,而不需要編寫大量的自定義內容?
alt text http://imgkk.com/i/soYWuf.jpg
wxPython的是基於wxWidgets庫的,所以它的功能是基於wxWidgets的的能力。
我沒有在wxWidgets網站上看到有關「玻璃」界面的任何內容,但我確實看到它支持紋理,而控件/窗體可以製作成semi-transparent。您應該能夠模擬一個玻璃界面,而不會有太多困難。
有點晚了,但我會回答反正...
有采取在Windows上使用的wxPython在Aero主題玻璃效果的優勢,沒有內置的方式。但是,您可以使用Win32 API破解一些東西。您正在尋找的兩個功能是DwmIsCompositionEnabled
和DwmExtendFrameIntoClientArea
。只需使用前者來檢查Aero是否啓用,然後在窗口上調用GetHandle()
方法並將結果傳遞到後者以獲得玻璃效果。
我從來沒有使用wxPython,所以它可能比這更復雜(你可能需要做更多的互操作工作),但這應該讓你開始。如果您需要interop部件的幫助,請查找Win32 programming in Python。
wxPython應該複製操作系統的本機窗口小部件支持的任何主題。它現在是什麼樣子? wxPython演示看起來是否正確?可能清單並未包含在內......我只知道我的wxPython程序在Windows 7上看起來「正確」,除非我使用通用小部件。
我知道如何設置透明度,但它看起來不像Vista的玻璃(主要是因爲它缺少模糊) – 2009-11-10 23:02:59