如何在.net 2.0中的Windows窗體應用程序上給Vista或Mac OS X風格的玻璃效果?.net - C#2.0應用程序中的玻璃效果
3
A
回答
4
這是通過使用Vista DWM(桌面窗口管理器)API進行互操作完成的。
例如,導入這些功能:
[DllImport("dwmapi.dll")]
static extern void DwmExtendFrameIntoClientArea(IntPtr hWnd, ref Margins pMargins);
[StructLayout(LayoutKind.Sequential)]
struct Margins
{
public int cxLeftWidth;
public int cxRightWidth;
public int cyTopHeight;
public int cyBottomHeight;
}
然後你就可以使用這個從窗口頂部的「拆」玻璃下到客戶區:
GlassMargins.Top = 40;
GlassMargins.Left = 0;
GlassMargins.Right = 0;
GlassMargins.Bottom = 0;
DwmExtendFrameIntoClientArea(this.Handle, ref GlassMargins);
從這裏,您可以繼續做其他事情,比如在玻璃上繪製文本或圖像,或者將控件放在上面,比如Office 2007風格的應用程序按鈕。
1
的DevExpress部件
- 用於.NET 2.0
http://devexpress.com/Products/NET/DXperience/editionWinForms.xml
使用GDI +
創建玻璃按鈕
2
使用DWM合成Vista Aero中的玻璃窗口邊界。這是一個OS級功能。如果您在Vista上運行應用程序,則應該免費獲得玻璃邊框。
如果你想擴展玻璃效果到客戶區,使用DwmExtendFrameIntoClientArea,這是Internet Explorer中是如何做的它的工具欄中即可。我懷疑你必須編寫互操作來自己調用這個本地函數(或者檢查http://pinvoke.net)。
相關問題
- 1. Silverlight 2.0中的Vista玻璃效果
- 2. jQuery填充玻璃效果
- 3. 形狀玻璃效果
- 4. 玻璃通過玻璃應用程序傳遞意圖
- 5. 玻璃效果 - 藝術效果
- 6. SpriteKit中的磨砂玻璃效果?
- 7. SceneKit材質中的玻璃效果
- 8. JavaFX中的磨砂玻璃效果?
- 9. .NET中的窗口玻璃
- 10. 谷歌玻璃應用程序分發
- 11. 具有玻璃效果的UIView
- 12. 創建「ok玻璃」風格菜單,在玻璃內應用程序
- 13. GLSL玻璃效果加深度剝離
- 14. html5 css3玻璃效果與折射
- 15. 自定義按鈕:玻璃效果
- 16. <canvas>鑽石/玻璃狀效果
- 17. 如何製作玻璃效果?
- 18. 屏幕/玻璃破碎效果
- 19. .net替代玻璃魚
- 20. C#:玻璃形式?
- 21. 玻璃
- 22. 在無邊框WPF窗口中啓用Vista玻璃效果
- 23. 在玻璃應用程序中創建卡片時間軸
- 24. 在MyGlass中將應用程序列爲玻璃器皿
- 25. 我的玻璃應用程序外的訪問卡
- 26. 如何創建簡單的玻璃效果
- 27. 如何在使用Delphi的控制檯應用程序中激活玻璃效果(Windows Vista/7)
- 28. 爲什麼我的磨砂玻璃效果不起作用?
- 29. 索尼智能玻璃上的應用程序安裝
- 30. 如何註冊索尼智能玻璃的應用程序?
這隻對按鈕產生影響。但我希望窗體玻璃化! – 2009-06-14 17:26:34