VBS編程教程 (第1篇)
來源:互聯網
上載者:User
發現大部分黑白的朋友都不會編程, 這可不是件好事, 所以這次我就寫了一個簡單的編程教程, 講一下VBScript. 主要面向菜鳥, 懂得編程的朋友就不要浪費時間了, 如果你想接觸以下VBScript也可以, 但既然有編程基礎推薦直接去找一些參考書來讀, 會比較快. 什麼是VBScript呢? VBScript的全稱是:Microsoft Visual Basic Script Editon.(微軟公司可視化BASIC指令碼版). 正如其字面所透露的資訊, VBS(VBScript的進一步簡寫)是基於Visual Basic的指令碼語言. 我進一步解釋一下, Microsoft Visual Basic是微軟公司出品的一套可視化編程工具, 文法基於Basic. 指令碼語言, 就是不編譯成二進位檔案, 直接由宿主(host)解釋原始碼並執行, 簡單點說就是你寫的程式不需要編譯成.exe, 而是直接給使用者發送.vbs的來源程式, 使用者就能執行了. 我知道菜鳥現在最關心的就是用什麼工具來開發VBS程式了, 答案是:記事本(Notepad).我不是開玩笑, 其實任何一種文字編輯器都可以用來開發VBS開發, 只不過記事本是由系統內建的, 比較好找而已. 儘管如此, 我還是建議你去下載一個專業的文字編輯器, 因為這些工具可以提供 "文法高亮"等功能, 更加方便開發, 用哪一個隨你喜好, 我比較喜歡Edit Plus (2.10). OK, 我們先來寫一個VBScript程式熱熱身.
REM 輸入並回顯你的名字
'使用InputBox和Msgbox函數
Dim name,msg msg="請輸入你的名字:" name=Inputbox(msg,"名稱") Msgbox(name) 把上面的程式清單輸入到記事本裡面, 然後儲存為以.vbs為副檔名的檔案("檔案類型"裡面選擇"所有檔案").然後雙擊運行, 觀察運行結果. 注意:請自己輸入程式清單, 不要複製->粘貼! 我來解釋一下這個程式, 第一行和第二行的開頭分別是"REM"語句和" ' ", 這兩個東西的作用是相同的, 表示本行是注釋行, 就是說這兩行什麼也不幹,只是用來說明這段程式的功能, 著作權資訊等等. 注釋行是程式最重要的部分之一, 儘管它不是必需的, 但對於其他人閱讀原始碼, 以及自己分析原始碼是很有好處的. 好的習慣是在必要的地方加上清晰, 簡潔的注釋. Dim用來聲明一個變數, 在VBS中, 變數類型並不是那麼重要, 就是說VBS會幫你自動識別變數類型, 而且變數在使用前不一定要先聲明, 程式會動態分配變數空間. 在VBS中你不用考慮name儲存的是一個整數還是一個小數(學名叫"浮點數"), 也不用考慮是不是字串(一串字元, 比如:"Hello World"), VBS會自動幫你搞定. 所以第三行語句可以刪除, 效果不會變, 但我強烈反對這麼做, 一個變數的基本原則就是:先聲明,後使用.變數名用字母開頭,可以使用底線,數字, 但不能使用vbs已經定義的字, 比如dim, 也不能是純數字. 下一行被稱之為"賦值", "="是賦值符號, 並不是數學中的等號, 儘管看起來一樣.這是正統的理解, 你要理解成等於也沒有什麼不可. 賦值號的左邊是一個變數, 右邊是要賦給變數的值, 經過賦值以後, msg這個變數在程式中等同於"請輸入你的名字:"這個字串,但當msg被再次複製的時候, 原值就會消失. 不光字串, 其他任何變數都這樣被賦值, 例如: a=2, b=12.222等等. 再往下,Inputbox和Msgbox是VBS內建的函數, 一個函數就相當於一個"黑箱", 有輸入(參數)和輸出(傳回值), 你可以不用瞭解函數是怎麼運作的, 只要瞭解這個函數能幹什麼就行了, 我們也可以定義自己的函數, 不過那要等到以後再講. 現在我們只要瞭解, 一個函數可以有傳回值也可以沒有, 可以有參數也可以沒有. 例如Inputbox就是有傳回值的函數, 我們用賦值號左邊的變數來"接"住InputBox的傳回值--就是你輸入的內容. 在inputbox右邊的括弧裡是參數列表, 每個參數用","分隔開, 每個參數有不同的功效, 比如第一個參數會顯示在提示裡, 我們把msg這個變數作為第一個參數傳給了Inputbox 函數, 而msg="請輸入你的名字:", 所以我們在對話方塊的提示欄就會看到"請輸入你的名字:" 第二個參數是對話方塊的標題, 我們用直接量(學名叫"常量", 這裡是"字串常量")傳遞給函數, 當然你也可以傳遞變數. Inputbox還有很多參數, 比如你在"名稱"後面再加一個","然後輸入隨便一串字元(字串,用雙引號""包裹起來的一串字元叫做字串)然後運行, 看看結果. 你會發現用於輸入的文字框有了預設的值, 這就是第三個參數的作用. Msgbox函數是用來輸出的函數, 在VBS中沒有專門的輸出函數(BASIC中的print,C中的printf), 所以我們只能用對話方塊來觀察輸出結果, Msgbox的必要參數只有一個, 就是要輸出的內容, 在這種情況下, 我們不需要理會msgbox的傳回值. 關於Msgbox和Inputbox我們以後還會在討論, 今天只是熱熱身, 到此為止. 要點: 1) 注釋(以REM或'開頭)行在程式中不起作用, 但能讓別人更容易讀懂你的程式. 2) 變數好像一個盒子, 或一個代號, 可以代表你想代表的東西. 變數賦值使用"=" 3) 以""包裹起來的字元稱之為"字串" 4) 函數像一個"黑箱", 有參數和傳回值, 用"="左邊的變數可以接住傳回值 5) Inputbox函數彈出一個輸入對話方塊,Msgbox則用於輸出 作業: 1) 實驗Inputbox的第三個參數 2) 寫一段程式輸出你的年齡 3) 寫一段程式進行3次輸入, 分別輸入你和你父母的姓名(要求顯示提示), 並分3次輸出