經(jīng)典案例利用VB.NET多窗體實(shí)現(xiàn)封面場所
對于VB.NET這門開發(fā)語言我十分的喜歡,因?yàn)閹拙浯a就可以實(shí)現(xiàn)一個功能,運(yùn)用起來簡單靈活,這里就給大家介紹一個關(guān)于VB.NET多窗體編程方法制作單獨(dú)程序封面。這里所謂的單獨(dú)封面,是只獨(dú)立應(yīng)用程序窗口本身的一個窗口,這個窗口在程序運(yùn)行時首先彈出屏幕,用于裝飾程序本身,或簡單的演示一下程序的優(yōu)越性。這樣的封面在很多專業(yè)的WINDOWS程序中均存在,在VB中可有兩種簡單的方法實(shí)現(xiàn)這一功能。此方法是通常采用的方法,即在程序中創(chuàng)建兩個或兩個以上的Form窗體,把其中的一個作為專門的程序封面制作場所,VB.NET多窗體具體方法:
1、創(chuàng)建一個新項(xiàng)目Form1,并在此窗體內(nèi)安放Command1命令按鈕,在Command1-Click()事件中輸入結(jié)束程序代碼“END”。
2、單擊菜單的“Insert"項(xiàng)目,加入一個新窗體Form1。
3、雙擊Form1窗體空白處,在Form1-Load()事件中輸入如下代碼,用于隱藏主窗體Form1,置第二窗體為***模式,并在運(yùn)行程序首先顯示和二窗體:
- Private Sub Form-Load () ’隱藏主窗口
- Form1.Visible = 0 ’窗口2***模式
- Form2.WindowState =2 ’顯示窗口2
- Form2.Show
- End Sub
4、 在窗體Form2中定義全程變量:
- Dim strr1 As String
- Dim i As Integer
5、在窗體Form2中放入一個時間控件Timer1。
6、在窗體Form2中的Form-Load ()事件中輸入以下代碼,用于在窗體2中顯示圖像,并置時間控件頻率:
- Private Sub Form-Load ()
- Form2.Picture = LoadPicture("c:\windows\setup.bmp")
- Timer1.Interval = 10
- i =0
- End Sub
7、在時間控件Timer1- Timer1()事件中進(jìn)行程序封面的制作工作,演示簡單的動畫,并控制此動畫運(yùn)行一段時間后自動停止,關(guān)閉程序封面,返回程序主窗口;下面的代碼實(shí)現(xiàn)在一個圖片上隨機(jī)顯示字符串,顯示30次字符串后自動退出。
- Private Sub Timer1-Timer ()
- Strr1 = "程序封面演示“
- With Form2
- .Font.Transparent =True ’透明顯示字符
- .Font.Size = Rnd *30+10 ’隨機(jī)變化字號
- .Font.Italic =True ’斜體有效
- .ForeColor=RGB(Rnd*256,Rnd*256,Rnd*256) ’隨機(jī)變化前景
- .FontName =Screen.Fonts (Rnd*7+14) ’隨機(jī)變化字體
- End With
- hh=Form2.TextHehght (strr1) ’取字符串高度
- ww= Form2.TextWidth (strr1) ’取字符串寬度
- x=Rnd * ( Form2.ScaleWidth-ww) ’隨機(jī)改變坐標(biāo)
- y=Rnd *( Form2.ScaleHeight-hh)
- Form2.Current X=x
- Form2.Current Y=y
- Form2.Print strr1 ’顯示字符
- ii = i +1 ’計(jì)數(shù)
- If i >30 Then
- Unload Me ’關(guān)閉封面
- Form1.Show ’調(diào)入主窗口
- Timer1.Enabled =False ’關(guān)閉時間控件
- End If
- End Sub
8、為了能夠人為地控制程序封面的停留時間,可在窗體Form2鼠標(biāo)單擊事件中安放退出封面代碼:
- Private Sub Form-Click ()
- Unload Me
- Form1.Show
- Timer1.Enabled =False ’關(guān)閉時間控件
- End If
- End Sub
#T#至此工作全部完成,當(dāng)運(yùn)行程序時,首先彈出程序封面,封面上顯示一幅·BMP圖像,之后在此圖像上進(jìn)行隨機(jī)字符串的顯示,字符串的位置、字體、字號、前景色等值都是隨機(jī)變化的,顯示30次后自動關(guān)閉封面返回主窗口,演示過程中用鼠標(biāo)單擊窗口也會返回主窗口,在主窗口中按下結(jié)束按鈕退出程序。具體操作時還有很多其它技巧,比如可以置第二個窗體為主窗體,這樣運(yùn)行時可自動先彈出程序封面,可省略隱藏窗體和調(diào)入窗體的過程,另外第二窗體也可以在程序運(yùn)行時由代碼動態(tài)生成,這樣編程時復(fù)雜一些,但有利于程序代碼的管理;程序封面的具體制作過程,有許多動態(tài)圖像控制方法可以使用,只要靈活動用VB.NET多窗體作圖方法,再加上一些必要的API函數(shù)的配合,會制作出理想的程序封面。