這裡主要利用api函式animate window實現窗體左右,上下,擴充套件,淡入滑動或滾動動畫效果,步驟如下:
1.新建窗體,使用2個groupbox控制項。
2.在控制項1中新增2個radiobutton控制項,並設定text分別為「滾動窗體」,「滑動窗體」,並使前者checked設定為true。
3.在空間2中新增6個按鈕,text分別為「自左向右動畫」,「自右向左動畫」,「自上向下動畫」,「自下向上動畫」,「向外擴充套件動畫」,「淡入動畫窗體」。
4.新增一新的window窗體,設定text為「動畫窗體」。設定其「backgroundimage」屬性,匯入一張要載入的影象,然後設定其「backgroundimagelayout」屬性為「stretch」。
5.各按鈕事件主要**如下:
複製** **如下:
private void button1_click(object sender, eventargs e)
&n程式設計客棧bsp; else
myf.show();
}private void button4_click(object sender, eventargs e)
else
myf.show();
}private void button2_click(object sender, eventargs e)
else
myf.show();
}private void button5_click(object sender, eventargs e)
else
myf.show();
}private void button3_click(object sender, eventargs e)
private void button6_click(object sender, eventargs e)
6.雙擊form2窗體,進入**檢視。首先定義公用變數,具體**如下:
複製** **如下:
public const int32 aw_hor_positive = 0x00000001;
public const int32 aw_hor_negative = 0x00000002;
public const int32 aw_ver_positive = 0x00000004;
public const int32 aw_ver_negative = 0x00000008;
public const int32 aw_center = 0x00000010;
public const int32 aw_hide = 0x00010000;
public const int32 aw_activate = 0x00020000;
public const int32 aw_slide = 0x00040000;
public const int32 aw_blend = 0x00080000;
[system.runtime.interopservices.dllimportattribute("user32.dll")]
private static extern bool animatewindow(intptr hwnd,int dwtime,int dwflags);
7.下面為form2窗體新增載入事件**,具體如下:
複製** **如下:
private void form2_load(object sender, eventargs e)
if (this.text == "自左向右滑動窗體動畫效果")
if (this.text == "自右向左滾動窗體動畫效果")
if (this.text == "自右向左滑動窗體動畫效果")
if (this.text == "自上向下滾動窗體動畫效果")
if (this.text == "自上向下滑動窗體動畫效果")
if (this.text == "自下向上滾動窗體動畫效果")
if (this.text == "自下向上滑動窗體動畫效果")
if (this.text == "向外擴充套件窗體動畫效果")
if (this.text == "淡入窗體動畫效果")
}//yinyiniao's blog
本文標題: c#之利用api函式實現動畫窗體的方法詳解
本文位址: /ruanjian/csharp/96317.html
c 之利用API函式實現動畫窗體
這裡主要利用api函式animate window實現窗體左右,上下,擴充套件,淡入滑動或滾動動畫效果,步驟如下 1.新建窗體,使用2個groupbox控制項。2.在控制項1中新增2個radiobutton控制項,並設定text分別為 滾動窗體 滑動窗體 並使前者checked設定為true。3.在...
C 窗體 窗體飛入飛出的動畫效果 Api
namespace 窗體進入和退出的動畫效果 system.runtime.interopservices.dllimport user32 private static extern bool animatewindow intptr hwnd,int dwtime,int dwflags 函式功...
C 17 之 利用建構函式推導模板引數型別
在 c 17 之前,通過向模板類的建構函式傳遞引數無法推導出類的模板引數型別.一般要通過乙個幫助函式來構造乙個物件,通過傳遞給幫助函式的引數推導出引數型別,然後在幫助函式中返回乙個構造好的物件.下面介紹 c 17 之前的做法與 c 17 的便利性.template class my class t2...