PB基礎語句.docx_第1頁
PB基礎語句.docx_第2頁
PB基礎語句.docx_第3頁
PB基礎語句.docx_第4頁
PB基礎語句.docx_第5頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PB 基本語句 循環語句PB 基本語句一、賦值語句賦值語句用于給變量、對象屬性賦值,這是應用程序中使用最頻繁的語句,其語法格式為:variablename = expression其中:variablename是變量名或對象屬性;expression是表達式,其數據類型應該與variablename的數據類型兼容。下面是賦值語句的幾個簡單示例: Address = 北京 TaxRate = .05 Age = 30 mle.text=北京歡迎你PowerScript的賦值語句不支持多重賦值,也就是說,一條賦值語句只對一個變量賦值,不能同時對多個變量賦值。下面的語句:A=B=0在有些編程語言中同時把A和B均賦值0,但PowerScript中,該語句等價于:A=(B=0)其意義為,檢查B等于0是否成立,成立時將TRUE賦給變量A,否則把FALSE賦給變量A。如果A不是Boolean類型的變量,則上述語句將引起編譯錯誤。二、條件語句IF語句有兩種形式,下面我們按照從簡單到復雜的次序逐一介紹。1. 單行IF . THEN語句單行IF . THEN語句的格式為:IF邏輯表達式THEN語句1 ELSE語句2單行IF . THEN語句書寫時整條語句寫在一行上,當邏輯表達式的結果為True時執行語句1,否則執行語句2(如果有該子句的話)。例如:IF sle_State.text=BJ THEN MessageBox(歡迎,北京)2多行IF . THEN語句多行IF . THEN語句的語法格式為:IF 邏輯表達式1 THEN 語句1 ELSEIF 邏輯表達式2 THEN 語句2 . . . ELSE 語句nEND IF本語句的執行過程為:計算邏輯表達式1,如果其結果為True,則執行語句1,然后離開整個IF語句;否則計算邏輯表達式2,如果其結果為True,則執行語句2,然后離開整個IF語句;. 如果邏輯表達式的結果都是False,且存在ELSE子句,則執行語句3。例1:從單行編輯框中輸入考分,按“輸入”按鈕再根據考分顯示及格或不及格。Integer ss = integer(sle_1.text) /sle_1 text單行編輯框文本If s =90 thenSt_1.text = “優” elseif s=80 then St_1.text = “良”elseif s=70 then St_1.text = “中”elseif s=60 then St_1.text = “及格”elseSt_1.text = “不及格”end if3. CHOOSE CASE語句根據測試表達式的值選擇不同的操作,其語法格式為: CHOOSE CASE 測試表達式 CASE 判斷表達式執行語句塊 CASE 判斷表達式語句塊. . . CASE 判斷表達式語句塊 CASE ELSE語句塊 END CHOOSE判斷表達式可以使用如下的形式:1. 用逗號分隔的一組數據,例如:2,4,72. 用TO表示一個區間范圍,例如:2 TO 153. 用IS代表測試值,后跟關系操作符和比較值,例如:IS 304. 組合運用上述三種方法,并用逗號進行分隔,例如:5,6,8 TO 12,IS 20 執行CHOOSE CASE語句時,PowerBuilder將逐條查找CASE,如果找到與測試值相匹配的判斷表達式,就執行該CASE后的語句塊,然后執行END CHOOSE后的第一條語句。如果CHOOSE CASE語句中包含CASE ELSE子句,則未找到任何匹配的CASE條件時,執行CASE ELSE子句中的語句塊。例3:從單行編輯框中輸入考分,按“輸入”按鈕后,再根據考分顯示優、良、種、及格或不及格。(用choose case重寫例2)integer fString sf = integer(sle_1.text)CHOOSE CASE fCASE IS = 90 / 改進 90 to 100S = 優CASE 80 TO 89 S = 良CASE 70 TO 79 S = 中CASE 60 TO 69 S = 及格 CASE 0 TO 59S = 不及格CASE ELSE S = 輸入錯,請重新輸入!END CHOOSESt_1.text = string(S)三、循環語句各種語言都提供了自己的循環語句,PowerScript也不例外,它的循環語句有三種形式:DO LOOP、FOR NEXT、GOTO,將前兩種形式與EXIT和CONTINUE語句配合使用,可以完全拋棄GOTO語句,而且DO LOOP本身有四種格式,豐富多采的表達方式為我們編寫清晰流暢的程序提供了有效手段。下面介紹PowerScript循環語句的格式、中途退出循環或中途開始下次循環的方法、以及循環嵌套的概念。1 DO LOOP循環DO LOOP結構提供了一種基于某個條件的靈活的循環方法,它有四種形式,分別為:DO UNTILu LOOPDO WHILEu LOOP (類似c)DO LOOP UNTILu u DO LOOP WHILE (類似c)DO表示循環的開始,LOOP表示循環的結束,condition表示循環條件,是個邏輯表達式,其值為True或False。(1) DO UNTIL LOOP的語法格式為:DO UNTIL 語句塊LOOP其執行過程為:先計算條件condition,其結果為False時,執行語句塊,接著再檢查條件,直到條件的結果為True時退出循環。例:按計算按鈕求s = 1+2+3+10。解1:integer i=1, s = 0DO UNTIL i10 s += ii +LOOPst_1.text = string(s)(2) DO WHILE LOOP的語法格式為:DO WHILE 語句塊LOOP其執行過程為:先計算條件,其結果為True時,執行語句塊,接著再檢查條件,直到條件的結果為False時退出循環。例:按計算按鈕求s = 1+2+3+10。解2:integer i=1, s = 0DO WHILE i=10 s += ii +LOOPst_1.text = string(s)(3) DO LOOP UNTIL的語法格式為:DO 語句塊LOOP UNTIL 其執行過程為:先執行語句塊,然后計算條件,如果其結果為False,則繼續執行語句塊,直到條件的結果為True時退出循環。例:按計算按鈕求s = 1+2+3+10。解3:解1與解3完全等價integer i=1, s = 0DO s += ii +LOOP UNTIL i10st_1.text = string(s)(4) DO LOOP WHILE的語法格式為:DO 語句塊LOOP WHILE 其執行過程為:先執行語句塊,然后計算條件,如果其結果為True,則繼續執行語句塊,直到條件的結果為False時退出循環。例:按計算按鈕求s = 1+2+3+10。解4:解2與解4完全等價integer i=1, s = 0DO s += ii +LOOP WHILE i6 then exit end if next s = s + inext4 CONTINUE(繼續循環)功能:在循環語句的循環體中,遇到CONTINUE語句后,將不執行CONTINUE語句后與循環結束前的所有語句,而開始新一輪循環。四、返回語句與終止程序運行 在編寫事件處理程序或函數時,使用RETURN語句返回控制給用戶或調用函數的地方。當希望終止應用程序的運行時,使用HALT語句。1 RETURN語句RETURN語句立即終止事件處理程序或函數的執行,把控制返回到調用程序。語法格式:RETURN 表達式功能:RETURN語句立即終止事件處理程序或函數的執行,把控制返回到調用程序。表達式值作為事件處理程序或函數的返回值返回。2 HALT語句HALT語句用于終止應用程序的運行,其語法為:HALT CLOSE其中CLOSE是個可選項。當HALT語句不帶CLOSE選項時,該語句立即終止應用程序的運行;當HALT語句帶CLOSE選項時,執行到該語句后,應用程序先執行應用對象的Close事件處理程序,之后再終止應用程序的運行。OpenWithParm() 功能 帶參數打開窗口,與打開窗口的Open()函數相似,OpenWithParm()有兩種語法格式: 語法一、帶參數打開編程時已知數據類型的窗口對象; 語法二、帶參數打開程序運行后才能確定數據類型的窗口對象。 下面分別予以介紹: 語法一、帶參數打開編程時已知數據類型的窗口對象語法 OpenWithParm(windowvar,parameter,parent) 參數windowvar:要打開窗口的窗口名,可以使用窗口畫筆定義的窗口對象名,也可以使用該窗口對象的某個變量。 Open()函數把打開窗口的引用放置到windowvar變量中 parameter:指定要傳遞給打開窗口的數據,該數據保存在Message對象的屬性中,parameter參數的數據類型必須是下述三種類型之一:String、Numeric、PowerObjectparent:可選項,指定要打開窗口的父窗口,要打開窗口成為父窗口的子窗口,只有當要打開窗口需要成為某個窗口的子窗口時才需要指定該參數。如果應用程序使用Open()函數打開某個子窗口或彈出窗口而又省略了該參數,那么當前活動窗口成為被打開窗口的父窗口返回值Integer。 函數執行成功時返回1,發生錯誤時返回-1。如果任何參數的值為NULL,OpenWithParm()函數返回NULL。 用法消息對象Message有三個屬性用于存儲OpenWithParm()函數傳遞給打開窗口的數據。根據parameter參數數據類型的不同,該參數的值保存在Message對象的不同屬性中。parameter參數的類型與使用的Message對象屬性的對應關系為: parameter參數的類型 使用的Message對象屬性 數值類型 Message.DoubleParm PowerObject(比如結構)Message.PowerObjectParm 字符串類型 Message.StringParm 應用程序根據OpenWithParm()函數parameter參數的數據類型,從Message對象的不同屬性中提取該函數傳送給被打開窗口的值。 語法二、帶參數打開程序運行后才能確定數據類型的窗口對象 語法 OpenWithParm(windowvar,parameter,windowtype,parent) 參數 windowvar:指定窗口變量名,Open()函數把打開窗口的引用放置到該變量中parameter:指定要傳遞給打開窗口的數據,該數據保存在Message對象的屬性中,parameter參數的數據類型必須是下述三種類型之一:String、Numeric、PowerObjectwindowtype:string類型,指定要打開窗口的數據類型,該參數指定的窗口數據類型必須與windowvar參數的類型相同或是windowvar類型的后繼對象 parent:可選項,指定要打開窗口的父窗口,要打開窗口成為父窗口的子窗口,只有當要打開窗口需要成為某個窗口的子窗口時才需要指定該參數。如果 應用程序使用Open()函數打開某個子窗口或彈出窗口而又省略了該參數,那么當前活動窗口成為被打開窗口的父窗口 返回值 Integer。 函數執行成功時返回1,發生錯誤時返回-1。如果任何參數的值為NULL,OpenWithParm()函數返回NULL。 示例1. 下面的代碼從表中選

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論