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