姜依彤
(黑龍江省水利水電勘測設計研究院,哈爾濱 150080)
文章編號:1007-7596(2015)12-0100-03
Visual Basic在計算堤防超高中的應用
姜依彤
(黑龍江省水利水電勘測設計研究院,哈爾濱 150080)
隨著計算機的飛速發展,如今計算機已成為各行各業中必不可少的工具。而利用計算機更好的在專業當中發揮作用,那要靠一些程序實現。利用VB編程,可以做一些簡單的程序,節省工作時間,使計算成果更精準,更有效的完成工作。文章利用VB編程,來實現堤防超高的計算。
網站建設;網站設計;網頁設計;水利工程
Visual Basic是一種常用的編程開發工具。Visual Basic是一種由 Microsoft 公司開發的結構化的、模塊化的、面向對象的、包含協助開發環境的事件驅動為機制的可視化程序設計語言[1]。
VB的程序是一種基于窗體的可視化組件安排的聯合,并且增加代碼來指定組建的屬性和方法。因為默認的屬性和方法已經有一部分定義在了組件內,所以程序員不用寫多少代碼就可以完成一個簡單的程序。
VB有如下特點:
1)可視化編程:最直觀的編程方法,程序人員只需繪制界面,無需編程,VB自動產生界面代碼,就可以完成許多步驟。這樣大大的提高了程序設計的效率。這些在以前的編程語言下是要經過相當復雜的工作的。
2)面向對象的程序設計思想。
3)事件驅動的編程機制:由事件來引發程序的運行。
4)結構化的程序設計語言。
5)支持多種數據庫系統的訪問:Access、dBASE、FoxPro等。
6)支持DDE和OLE。
7)充分利用WINDOWS資源:通過ActiveX控件OCX、動態鏈接庫DLL、應用程序接口API可任意擴展功能。
8)VB6.0在開發環境上、網絡功能等的增強。
如今,計算機已經是各行各業中必不可少的工具,而利用計算機更好的在專業當中發揮作用,那要靠一些程序實現。利用VB編程,可以做一些簡單的程序,節省工作時間,使計算成果更精準,更有效的完成工作。
編程應用于各個領域當中,在水利工程設計中,更是應用廣泛。根據VB的特點,在水利工程當中,可以利用VB編寫很多程序,比如堤基處理計算、設計潮位計算、護岸計算、滲流計算、抗滑穩定計算等。
運用VB編寫完程序后,可以代替電子表格等工具進行計算,實現輸入數據自動生成結果,大量節省了工作時間,提高工作效率。
經實驗,運用VB編程,實現了堤防超高的計算。
下面運用VB,簡單實現堤防超高的計算。
3.1 主界面
首先做一個Frame框架,將所需要的基礎數據要素名稱都用Label標簽輸入進去,在每一個Label標簽后都做個Text文本框,內容為空,以便運行程序時輸入基礎數據用。做好的主界面如圖1所示。

圖1 主界面
3.2 波浪要素確定
首先做一個Frame框架,將所要生成的數據要素名稱都用Label標簽輸入進去,在每一個Label標簽后都做個Text文本框,內容為空,在下面做一個command按鈕。運行程序時,點擊按鈕,計算結果均顯示在文本框里。做好的主界面如圖2所示。

圖2 波浪要素確定界面
3.3 風浪爬高確定
首先做一個Frame框架,將所要生成的數據要素名稱都用Label標簽輸入進去,在每一個Label標簽后都做個Text文本框,內容為空,在下面做一個command按鈕。運行程序時,點擊按鈕,計算結果均顯示在文本框里。
對于“請選擇護面類型”和“是否允許越浪”,這里做了一個ComboBox組合框,當選擇時,K△1與K△2、Kp均由程序給出數值。
做好的主界面如圖3所示。

圖3 風浪爬高確定界面
3.4 波浪爬高折減
首先做一個Frame框架,將所要生成的數據要素名稱都用Label標簽輸入進去,在每一個Label標簽后都做個Text文本框,內容為空,在下面做一個command按鈕。運行程序時,點擊按鈕,計算結果均顯示在文本框里。做好的主界面如圖4所示。

圖4 波浪爬高折減界面
3.5 超高計算
首先做一個Frame框架,將將所需要的基礎數據要素名稱和所要生成的數據要素名稱都用Label標簽輸入進去,在每一個Label標簽后都做個Text文本框,內容為空,再做一個command按鈕。運行程序時,點擊按鈕,計算結果均顯示在最后的文本框里。做好的主界面如圖5所示。

圖5 超高計算界面
通過以上圖1~圖5這幾個步驟,超高計算就自動生成出來了。
3.6 菜單編輯
打開菜單編輯器,對菜進行編輯,做這個菜單編輯的好處就是,今后可以編寫更多的內容來完善VB小程序,做好的菜單如圖6所示。

圖6 菜單界面
可視化的“框架”做好了,接下來就是對每一個控件進行程序編寫。
下面以“3.2風浪要素確定”為例簡單介紹。
根據《堤防工程設計規范》GB50286-2013,其中C.1.2、C.1.3、C.1.4計算波長L的公式。公式如下:
(1)

按平均波周期計算的波長可按下式計算:
(2)
式中:L為平均波長,m。
對于“計算”按鈕的程序編寫如下:
Private Sub Command1_Click()
Dim V, f, m, d, H, T, l As Double
Dim A1, b1, c1, d1, e1, V1, L1 As Double
m = Text3.Text
V1 = Text1.Text
V = V1 * Text17.Text
f = Text2.Text
d = Text5.Text
A1 = 0.7 * (9.81 * d / (V ^ 2)) ^ 0.7
b1 = 0.0018 * (9.81 * f / (V ^ 2)) ^ 0.45
c1 = (Exp(A1) - Exp(-A1)) / (Exp(A1) + Exp(-A1))
d1 = b1 / (0.13 * c1)
e1 = (Exp(d1) - Exp(-d1)) / (Exp(d1) + Exp(-d1))
H = 0.13 * c1 * e1 * (V ^ 2) / 9.81
T = 13.9 * (9.81 * H / (V ^ 2)) ^ 0.5 * V / 9.81
l = 1
Do
L1 = 9.81 * T ^ 2 * ((Exp(2 * 3.1415926 * d / l) - Exp(-2 * 3.1415926 * d / l)) / (Exp(2 * 3.1415926 * d / l) + Exp(-2 * 3.1415926 * d / l))) / (2 * 3.1415926)
l = l + 0.001
Loop While l <= L1
Text6.Text = H
Text7.Text = T
Text8.Text = L1
Text11.Text = V / (9.81 * d) ^ (0.5)
Text13.Text = H / d
End Sub
運用VB編寫完程序后,可以代替電子表格等工具進行計算,實現輸入數據自動生成結果,大量節省了工作時間,提高工作效率。因此,在今后的工作中,可以用VB編寫一些程序,有效的利用在水利工程設計當中。
[1]龔沛增,Visual Basic 程序設計教程[M].北京:清華大學出版社,2004:26-34.
2015-09-11
姜依彤(1987- ),女,黑龍江哈爾濱人,助理工程師。
TP311.1
B