在大學作畢業設計的課題是編制一個教學軟件,所以很自然地和VB這種易學、易懂、界面友好漂亮的語言打上了交道。在編寫的過程中當然遇到了許多的問題,這裡將一些簡單的小程序寫下來與喜愛編程的朋友們分享。
一、封面
封面的設計是這樣的,先出現一窗體,上面為你喜歡的圖案。然後出現一艘從左向右行駛著的船。屏幕上方從兩側分別移動出“歡迎”兩個字。
具體的制作方法是:把預先選好的背景圖案裝入封面窗體中,窗體命名為CAI。再分別在三個圖像控件(image)中裝入預先制作好的位圖“歡”、“迎”和船型圖案。然後把三個image放置在初始位置(即圖案剛在窗體出現時的位置),並把它們的可視屬性都設置為“false”。程序如下:
SubForm_load()
cai.Show'顯示封面窗體
DimI'定義變量
image3.visible=True'船型圖像控件出現
a1:Ifimage3.Left<6120Then
'6120為船移動到屏幕右邊的坐標,此值可以隨需要選取
image3.Moveimage3.Left+50
'移動此圖像控件如嫌移動慢,可改變移動值
Gotoa1
EndIf
image1.visible=True'“歡”字出現
a2:Ifimage1.Left<2120Then
'2120為“歡”字移動到屏幕中間的位置
image1.Moveimage1.Lefe+50'移動此圖像控件
Gotoa2
EndIf
image2.visible=True'“迎”字出現
a3:Ifimage2.Left>5420Then
'5420為“迎”字移動到屏幕中間的位置
image2.Moveimage2.Left-50'移動此圖像控件
Gotoa3
EndIf
ForI=1To10000
'使窗體暫停一段時間時間長短可通過改變循環次數實現
NextI
menul.Show'顯示程序主窗體
Unloadcai'卸載封面窗體
EndSub
二、簡單的“動畫”
點擊一3D按鈕後,屏幕表現光線平行進入一玻璃管,在管中有一散射中心,有的光線射到此中心後反射到管的初始端。程序如下:
SubCommand3Dl_Click()
DimI,j,k,m,n'定義變量
ForI=2080To5520
'顯示出三條線,直到圖像中的散射中心處,顏色為黑色
Line(2080,2760)-(I,2760),RGB(0,0,0)
Line(2080,2860)-(I,2860),RGB(0,0,0)
Line(2080,2660)-(I,2660),RGB(0,0,0)
NextI
Forj=5520To4800Step-1'反射光線第一次射到管壁上
Line(5520,2760)-(j,2760-(5520-j)*.33333333),RGB
(255,0,0)'反射光線,顏色為紅色
Line(5520,2660)-(5520+(5520-j),2660),RGB(0,0,0)
Line(5520,2860)-(5520+(5520-j),2860),RGB(0,0,0)
'沒有遇到散射中心的兩條光線,為黑色,繼續前進
Nextj
Fork=4800To3360Step-1'反射光線第二次射到管壁上
Line(4800,2520)-(k,2520+(4800-k)*.33333333),
RGB(255,0,0)'反射光線,顏色為紅色
Line(6240,2660)-(6240+(4800-k),2660),RGB(0,0,0)
Line(6240,2860)-(6240+(4800-k),2860),RGB(0,0,0)
'沒有遇到散射中心的兩條光線,顏色為黑色
Nextk
Form=3360To2080Step-1'反射光線第三次射到管壁上
Line(3360,3000)-(m,3000-(3360-m)*.33333333),
RGB(255,0,0)'反射光線,顏色為紅色
Nextm
EndSub
三、封底
封底的設計是:先出現全黑的屏幕,然後從上至下逐漸拉出白底紅字的“再見”的字樣。先按要求在畫板中做一個BMP圖,上面寫著“再見”。然後在一名為BYE的窗體中加入一個全屏大的Picturel,將BMP圖裝入。程序如下:
SubForm_Load()
DimI'定義變量
bye.Show'封底出現
Unloadmenu1'卸載主菜單
al:Ifpicture1.Height<7130Then'7130為圖的高度
picturel.Height=picture1.Height+50'下拉屏幕
GoToal
EndIf
ForI=1To20000'使窗體暫停一段時間
NextI
End'結束所有操作
EndSub->