欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# WinForm實現(xiàn)Win7 Aero透明效果代碼

 更新時間:2014年07月03日 09:57:01   投稿:junjie  
這篇文章主要介紹了C# WinForm實現(xiàn)Win7 Aero透明效果代碼,通過調(diào)用dwmapi.dll相關(guān)方法實現(xiàn),需要的朋友可以參考下

在Vista系統(tǒng)之后,微軟為窗體程序提供了Aero磨砂的效果,如下圖。那么用C#如何來實現(xiàn)這種磨砂效果呢?

背景為我的桌面
那先上代碼吧:

[StructLayout(LayoutKind.Sequential)] 
public struct MARGINS 
{ 
  public int Left; 
  public int Right; 
  public int Top; 
  public int Bottom; 
} 
 
[DllImport("dwmapi.dll", PreserveSig = false)] 
static extern void DwmExtendFrameIntoClientArea(IntPtr hwnd, ref MARGINS margins); 
 
[DllImport("dwmapi.dll", PreserveSig = false)] 
static extern bool DwmIsCompositionEnabled(); 
 
public Form1() 
{ 
  InitializeComponent(); 
} 
 
protected override void OnLoad(EventArgs e) 
{ 
  if (DwmIsCompositionEnabled()) 
  { 
    MARGINS margins = new MARGINS(); 
    margins.Right = margins.Left = margins.Top = margins.Bottom = this.Width + this.Height; 
    DwmExtendFrameIntoClientArea(this.Handle, ref margins); 
  } 
  base.OnLoad(e); 
} 
 
protected override void OnPaintBackground(PaintEventArgs e) 
{ 
  base.OnPaintBackground(e); 
  if (DwmIsCompositionEnabled()) 
  { 
    e.Graphics.Clear(Color.Black); 
  } 
} 

這中效果的實現(xiàn)主要是調(diào)用了系統(tǒng)的dwmapi.dll。

dwmapi.dll是Microsoft Desktop Window Manager API(桌面窗口管理器DWM 的公用界面)的動態(tài)鏈接庫,正常文件,主要用作桌面效果的api。DWM 是一種新界面,在除 Windows Vista Home Basic 之外的所有 Windows Vista 版本中均提供 DWM 界面。

所以這種效果只能在Vista之后的系統(tǒng)中使用。

相關(guān)文章

  • C#串口通訊概念及簡單的實現(xiàn)方法

    C#串口通訊概念及簡單的實現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于C#串口通訊概念及簡單的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者使用C#具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • C#使用正則表達式

    C#使用正則表達式

    這篇文章介紹了C#使用正則表達式的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • 在C#中使用MongoDB數(shù)據(jù)庫

    在C#中使用MongoDB數(shù)據(jù)庫

    這篇文章介紹了在C#中使用MongoDB數(shù)據(jù)庫的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • C#異步編程由淺入深(二)之Async/Await的使用

    C#異步編程由淺入深(二)之Async/Await的使用

    這篇文章主要介紹了C#異步編程由淺入深(二)之Async/Await的作用,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • C# 打開電子郵件軟件的具體方法

    C# 打開電子郵件軟件的具體方法

    這篇文章介紹了C# 打開電子郵件軟件的具體方法,有需要的朋友可以參考一下
    2013-11-11
  • Unity實現(xiàn)滑動更換界面效果

    Unity實現(xiàn)滑動更換界面效果

    這篇文章主要為大家詳細介紹了Unity實現(xiàn)滑動更換界面效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • c#委托把方法當成參數(shù)(實例講解)

    c#委托把方法當成參數(shù)(實例講解)

    本篇文章主要是對c#委托把方法當成參數(shù)的實例代碼進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-01-01
  • C#事件中關(guān)于sender的用法解讀

    C#事件中關(guān)于sender的用法解讀

    這篇文章主要介紹了C#事件中關(guān)于sender的用法解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • c#只讀字段和常量的區(qū)別,以及靜態(tài)構(gòu)造函數(shù)的使用實例

    c#只讀字段和常量的區(qū)別,以及靜態(tài)構(gòu)造函數(shù)的使用實例

    這篇文章主要介紹了c#只讀字段和常量的區(qū)別,以及靜態(tài)構(gòu)造函數(shù)的使用實例,有需要的朋友可以參考一下
    2013-12-12
  • 深入多線程之:雙向信號與競賽的用法分析

    深入多線程之:雙向信號與競賽的用法分析

    本篇文章是對雙向信號與競賽的用法進行了詳細的分析介紹。需要的朋友參考下
    2013-05-05

最新評論