版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本文檔分為兩個(gè)部分,(完全是分開的兩部-沒關(guān)聯(lián))第一部分: PB書本自學(xué)類容一:標(biāo)識(shí)符:標(biāo)識(shí)符是程序中用來代表變量,標(biāo)號(hào),函數(shù),窗口,控件,對(duì)象等名稱的符號(hào)。標(biāo)識(shí)符必須是下劃線或者字母開頭,標(biāo)識(shí)符的非開頭字符可以是字母,數(shù)字或者5中特殊符號(hào)(-,_,#,%,$)標(biāo)識(shí)符不區(qū)分大小寫標(biāo)識(shí)符的書寫應(yīng)保持連續(xù),中間不能留空格。標(biāo)識(shí)符的最大長(zhǎng)度應(yīng)該控制在100個(gè)字符內(nèi)。保留字不能用作標(biāo)識(shí)符,因?yàn)樗鼈円呀?jīng)有特殊的含義。Asdf_dfdfDffds-adfDfsdf_adfDfa#dfAsdf%fggDff$fsdfThis /誤用保留字二:ASCLL碼字符:字符串中可以包括特殊的ascll碼字符,它們不能
2、使用常規(guī)的的輸入方法直接輸入,要使用其他字符來替代。新行:n 制表:t 雙引號(hào):” 單引號(hào): 等等三:代詞:日常生活中可以用你,我,他之類的代詞來指代特定的人物,PowerBuilder也提供了幾個(gè)代詞指定特定的對(duì)象。4個(gè)代詞分別是:this parent parentwindow super 其中前3個(gè)廣泛使用。1.This: 代表窗口,用戶對(duì)象,菜單,應(yīng)用對(duì)象或控件本身,即代表正在為之編寫事件處理程序的對(duì)象。示例;設(shè)窗口有一個(gè)名稱為cb_button的按鈕,其上顯示的文本是請(qǐng)單擊在該按鈕的clicked事件中可以添加如下代碼:This.text= 再單機(jī)一次 :語句執(zhí)行后把請(qǐng)單擊改成了再單
3、機(jī)一次不用代詞語句:cb_button.text= 再單機(jī)一次2.parent: 代表當(dāng)前控件所在的窗口對(duì)象如上述例子:parent.text= 再單機(jī)一次 3Parentwindow 代表程序運(yùn)行時(shí)當(dāng)前菜單 所在的窗口對(duì)象,注意:改代詞只能在菜單對(duì)象的事件處理程序中使用。例子:假設(shè)cb_button窗口關(guān)聯(lián)了一個(gè)菜單對(duì)象,該菜單中的關(guān)閉命令用于關(guān)閉窗口cb_button,我們可以在該菜單項(xiàng)的clicked事件中添加如下代碼:/關(guān)閉關(guān)聯(lián)窗口Close (parentwindow) /等同于Close(cb_button)Super :在編寫空間或?qū)ο蟮淖訉?duì)象時(shí),子對(duì)象中可以調(diào)用父對(duì)象的事件處理
4、程序,程序中的既可直接利用父對(duì)象名稱調(diào)用他們,也可以使用super代詞來應(yīng)用。四:對(duì)象,屬性,函數(shù)和事件的應(yīng)用方法。Powerbuilder應(yīng)用程序的開發(fā)過程實(shí)際上就是對(duì)各種對(duì)象的定義和使用過程。所有對(duì)象都有名稱,并通過名稱相互區(qū)分。在powerscript中,訪問對(duì)象的屬性,函數(shù),事件的方法很簡(jiǎn)單,就是使用圓點(diǎn)(.)作為標(biāo)記符。(1) 訪問對(duì)象屬性的格式為:對(duì)象名.對(duì)象屬性列4.1:把單行編輯框sle_name 的用戶輸入內(nèi)容送入字符串變量userenter 的語句可以寫成:Userenter= sle_name.text (2)訪問對(duì)象的函數(shù)與事件的格式為:Objectname. type
5、 calltype when functionname (argumentlist)l objectname:對(duì)象名l type: 取值為function 或 event ,用于指明訪問函數(shù)還是事件,默認(rèn)值是function。l calltype: 用于指明查找函數(shù)的時(shí)機(jī),有效取值為:static(默認(rèn)值),編譯時(shí)查找函數(shù),若不存在,產(chǎn)生編譯錯(cuò)誤;dynamic,程序運(yùn)行時(shí)查找函數(shù),若不存在,產(chǎn)生運(yùn)行錯(cuò)誤。l when: 用于指明函數(shù)或事件是立即執(zhí)行還是當(dāng)前程序段執(zhí)行完畢后執(zhí)行,取值為 TRIGGER(默認(rèn)值),立即執(zhí)行;POST,當(dāng)前程序段執(zhí)行完畢后執(zhí)行。l Functionname:指明調(diào)
6、用的函數(shù)或事件名稱。l Argumentlist: 給出函數(shù)或事件的參數(shù)。例4.2:對(duì)象函數(shù)和事件的調(diào)用示例。代碼如下/想把輸入焦點(diǎn)移動(dòng)到單行編輯框sle_name上,程序中的代碼是Sle_name.setfocus()/想立即執(zhí)行按鈕cb_name的單擊事件處理器,那么編寫代碼Cb_name.event trigger clicked五:保留字保留字是powerbuilder內(nèi)部使用的一組單詞,有著特殊的含義,不能再把他們用作標(biāo)識(shí)符。如果應(yīng)用程序誤把保留字用作了標(biāo)識(shí)符,那么powerbuilder將給出編譯錯(cuò)誤。 在powerbuilder中保留字一般顯示為綠色。六:數(shù)據(jù)類型Powerbui
7、lder的數(shù)據(jù)類型十分豐富,主要包括:標(biāo)準(zhǔn)數(shù)據(jù)類型,any 數(shù)據(jù)類型,系統(tǒng)對(duì)象數(shù)據(jù)類型和枚舉類型,共4大類。程序中通過數(shù)據(jù)類型限定變量的取值范圍。在powerscript中,我們使用數(shù)據(jù)類型來聲明變量或數(shù)組。1標(biāo)準(zhǔn)數(shù)據(jù)類型:Blob 二進(jìn)制大對(duì)象,用于存儲(chǔ)大量數(shù)據(jù),例如圖像.大文本等。Boolean 布爾型,true 或falseCharacter/char 單個(gè)ASCLL字符Date 日期,包括年(1000-3000)月(01-12) 日(01-31)Datetime 日期及時(shí)間,僅用于訪問數(shù)據(jù)庫的datetime型數(shù)據(jù)Decimal/dec 帶符號(hào)十進(jìn)制數(shù),最大18位精度。Double I
8、nteger/int 16位帶符號(hào)整數(shù),范圍從-2147483648 到 +2147483648RealString 字符串類型,用于任意的ASCLL字符,比如計(jì)算機(jī)abcUnsignedinteger 16位無符號(hào)整數(shù),范圍0-65535Unsignedlong 32位無符號(hào)整數(shù),范圍0-42949762952.常量的申明在編寫代碼時(shí),對(duì)應(yīng)用程序不應(yīng)該修改的數(shù)據(jù)聲明成常量是個(gè)好辦法:一來提高了程序的可讀性和可維護(hù)能力,二來避免了意外的修改,降低了編碼出錯(cuò)的概率。聲明常量使用 constant,其簡(jiǎn)單語法為:Constent 數(shù)據(jù)類型.常量名= 常量值3.變量的作用域:作用域是指用戶定義的變量
9、在什么范圍內(nèi)有效。Powerbuilder的變量作用域共有4種:全局變量,實(shí)例變量,共享變量和局部變量。*全局變量:在整個(gè)應(yīng)用程序中都可以訪問,他的作用域是整個(gè)應(yīng)用程序*實(shí)例變量:實(shí)例變量和對(duì)象相關(guān)聯(lián),只有在該對(duì)象的事件處理程序或函數(shù)中才能使用為該對(duì)象定義的實(shí)例變量。實(shí)例變量在它所關(guān)聯(lián)的對(duì)象打開時(shí)創(chuàng)建,被關(guān)閉時(shí)消失。*共享變量:共享變量是一種靜態(tài)變量,這不僅意味著它所在的對(duì)象關(guān)閉后如果再次打開時(shí),共享變量依然保持對(duì)象關(guān)閉時(shí)的值,還意味著同一個(gè)類的多個(gè)實(shí)例中的同名共享變量將保持相同的值。*局部變量:局部變量在使用它的事件處理程序或函數(shù)中聲明,其作用域僅限于聲明它的程序段,在該程序段的任何地方均可
10、訪問局部變量,但其他程序段都不能訪問本程序段中的局部變量。運(yùn)行程序后,進(jìn)入某個(gè)程序段時(shí),系統(tǒng)自動(dòng)為局部變量分配內(nèi)存,退出程序時(shí),局部變量占用的內(nèi)存被釋放。4.變量的默認(rèn)值變量類型 默認(rèn)值 Blob 長(zhǎng)度為0,空的二進(jìn)制大對(duì)象Boolean falseChar ascll碼0Date 1900-01-01Datetime 1900-01-01 00:00:00數(shù)值類型* 0String 空字符串(“”)Time 00:00:00七:運(yùn)算符1算術(shù)運(yùn)算符算術(shù)運(yùn)算符用于完成數(shù)學(xué)運(yùn)算+ - - * / + - += -= *= /= =2.關(guān)系運(yùn)算符關(guān)系運(yùn)算符用于比較兩個(gè)操作符,比較的結(jié)果為下述3個(gè)值之
11、一(true , false, null )= > < <> >= <=在進(jìn)行運(yùn)算符比較時(shí),應(yīng)注意到這些運(yùn)算符進(jìn)行的比較是區(qū)分大小些的比較,也就是說A<>a。需要時(shí)可使用powerscrpt的字符串操作函數(shù)進(jìn)行適當(dāng)?shù)霓D(zhuǎn)換,這類函數(shù)包括:Upper() 轉(zhuǎn)換成大寫Lower() 轉(zhuǎn)換成小寫Righttrim() 刪除右部空白Lefttrim() 刪除左部空白Trim() 刪除兩端空白3邏輯運(yùn)算符 Not and or 4連接運(yùn)算符連接運(yùn)算符只有一個(gè),那就是+,用于把兩個(gè)string型或blob型變量的內(nèi)容連接在一起,形成新的字符串或blob型數(shù)據(jù)。
12、4.1例:string testtest =北京 + 上海 /test中包含“北京上?!?.基本語句 Powerscript的基本語句主要包括賦值語句,條件語句,循環(huán)語句。5.1賦值語句:用于給變量或?qū)ο筚x值,使用最頻繁的語句。其中語法格式為:Variablename (變量名或?qū)ο竺? = expression(是表達(dá)式,其數(shù)據(jù)類型應(yīng)該與variablename的數(shù)據(jù)類型兼容)5.2 條件語句: 共有if語句和 choose case 語句 兩類條件語句。If語句計(jì)算一個(gè)邏輯表達(dá)式,然后根據(jù)表達(dá)式的值是真還是假?zèng)Q定下一步執(zhí)行的語句塊。 Choose case 語句可同時(shí)處理多種情況。(1)i
13、f 語句,if語句有兩種形式。一單行 ifthen 語句,格式為:If cond then action1 else action2其中cond 是個(gè)表達(dá)條件的邏輯表達(dá)式;action1,action2 是一條語句;大括號(hào)表示該部分可以根據(jù)需要選擇。(2) choose case 語句5.3循環(huán)語句:powerscript 的循環(huán)語句有3種形式:doloop , fornext, 和 goto。如果合理的將前兩種形式與exit 和 continue語句配合使用,完全可以拋棄goto 語句。而且 do loop 結(jié)構(gòu)本身又有4中形式,豐富多彩的表達(dá)方式為我們編寫清晰流暢的程序提供了有效的手段。(
14、1)do loop 循環(huán)語句,4種形式:* Do until condition loop* do while condition loop *do .loop until condition *do loop while condition其中do標(biāo)示循環(huán)的開始;loop 表示循環(huán)的結(jié)束;condition表示循環(huán)條件,是個(gè)邏輯表達(dá)式,其值為true或false。( 2 )fornext :fornext是個(gè)循環(huán)次數(shù)確定的循環(huán)結(jié)構(gòu),她使循環(huán)體內(nèi)的語句執(zhí)行規(guī)定的次數(shù),語法結(jié)構(gòu)為: for varname = start to end step increment statementblock
15、next其中varname是循環(huán)變量,可以使是任意的數(shù)字類型;start end 分別是循環(huán)變量的初值和終值;increment是每次循環(huán)后循環(huán)變量的步長(zhǎng)增量(默認(rèn)值為1);statementblock 是一組語句,成為循環(huán)語體,大括號(hào)表示此語句可以省略。其循環(huán)過程為: 虛幻變量varname 從start 開始,到end 為止,重復(fù)執(zhí)行循環(huán)體,每執(zhí)行一次,varname+increment。另外 ,如果start 和end 在循環(huán)體內(nèi)被修改,將影響循環(huán)次數(shù)。(3) goto 語句goto語句將控制跳轉(zhuǎn)到程序中的其他位置,用goto語句也可以構(gòu)成循環(huán)。其語法格式為:goto label 其中l(wèi)
16、abel是語句標(biāo)號(hào),它使用標(biāo)識(shí)符的命令規(guī)則。(4) exit (退出循環(huán))語句在doloop和for.next語句的循環(huán)體中,當(dāng)我們想在中途退出循環(huán)時(shí),可以使用exit語句,執(zhí)行該語句后,程序的控制權(quán)轉(zhuǎn)至循環(huán)語句后的語句。(5) continue(繼續(xù)循環(huán))語句在循環(huán)體中,遇到continue語句后,將不執(zhí)行continue語句后與循環(huán)結(jié)束前的所有語句,而是開始新一輪循環(huán)。常用事件Open 事件:打開窗口時(shí)觸發(fā)Close 事件:關(guān)閉窗口時(shí)觸發(fā)。Closequery 事件:在開始關(guān)閉窗口時(shí)觸發(fā)。Dragdrop 事件:當(dāng)在窗口客戶區(qū) 釋放拖動(dòng)對(duì)象時(shí)發(fā)生。Resize 事件:當(dāng)窗口大小發(fā)生變化時(shí)產(chǎn)
17、生,窗口被打開時(shí)也產(chǎn)生該事件。常用函數(shù)Powerbuilder 窗口對(duì)象比較常用的函數(shù)如下:1.ArrangeSheets() 功能:按指定方式排列mdi框架窗口中的工作窗口(子窗口)或圖標(biāo)。語法:mdiframe.arrangesheets(arrangetype)2. getactivesheet()功能:得到指定mdi框架窗口中當(dāng)前活動(dòng)工作表。語法:mdiframewindow.getactivesheet()3.getparent功能:返回父窗口的名稱語法: windowname.Getparent()4.hide()功能:隱藏窗口語法: windowname.hide()5.prin
18、t功能:打印窗口語法:windowname.print()6.setfocus()功能:將焦點(diǎn)設(shè)置在該窗口上。語法:windowname.setfocus()7.show()功能:顯示窗口語法:windowname.show()與窗口相關(guān)的函數(shù)1.Open()功能:打開窗口。該函數(shù)有兩種語法格式:格式一:打開編程時(shí)已知數(shù)據(jù)類型的窗口對(duì)象。格式二:打開程序運(yùn)行后才能確定數(shù)據(jù)類型的窗口對(duì)象。語法一:Open(windowvar,parent)語法二:Open(windowvar,windowtype,parent)2 Openwithparm()功能:帶參數(shù)打開窗口,與Open()函數(shù)相似。區(qū)別在
19、于 openwithparm()函數(shù)可以向打開的窗口對(duì)象傳遞參數(shù)。語法一:openwithparm(windowvar,parameter,parent)二openwithparm(windowvar,parameter,windowtype,parent)3 opensheet()功能:在mdi框架窗口中打開mdi子窗口,并在指定菜單中創(chuàng)建該子窗口的相關(guān)菜單項(xiàng)。語法:4 opensheetwithparm()功能:在Mdi框架窗口中帶參數(shù)打開mdi子窗口。與opensheet()函數(shù)相似。區(qū)別在于opensheetwithparm()函數(shù)可以向打開的窗口對(duì)象傳遞參數(shù)。語法:5 close()
20、功能:關(guān)閉窗口并釋放窗口以及窗口上的控件所占據(jù)的內(nèi)存。語法: Close(windowname)6 CloseWithReturn()功能:關(guān)閉窗口,與close()函數(shù)相似。區(qū)別在于closewithreturn()函數(shù)在關(guān)閉窗口時(shí)將返回值保存在message對(duì)象中。PB中實(shí)例化(用isvalid判斷)的作用是什么?比如:if not isvalid(myo_apprun) thenmyo_apprun = create my_apprunend if如果不寫它會(huì)有什么后果?不寫可能會(huì)報(bào)錯(cuò),使用isvalid來判斷對(duì)象是否成功被創(chuàng)建,如果未被成功創(chuàng)建就去使用的話會(huì)拋出異常,程序不能正常運(yùn)行。
21、Upper()編輯Upper()功能將字符串中的小寫字母轉(zhuǎn)換為大寫字母。語法Upper( string )參數(shù)string:要將其中的小寫字母轉(zhuǎn)換為大寫字母的字符串返回值String。函數(shù)執(zhí)行成功時(shí)返回將小寫字母轉(zhuǎn)換為大寫字母后的字符串,發(fā)生錯(cuò)誤時(shí)返回空字符串("")。如果string參數(shù)的值為NULL,Upper()函數(shù)返回NULL。eg:select upper('AaCdD') from dual;UPPER('AACDD')message.stringparm的用法 比如openwithparm(w_1,'abc')在
22、w_1的open事件里就可以通過message.stringparm取得'abc'的值string ls_stringls_string = message.stringparm /ls_string的值即為abc在窗口調(diào)用的時(shí)候openwithparm(window_name,'trans_string')在窗口打開的時(shí)候(open event),ls_string = message.stringparmOpenWithParm()功能帶參數(shù)打開窗口,與打開窗口的Open()函數(shù)相似。Trim()刪除字符串首尾的空白(可以首尾一起,也可以指定首或尾,取決于控
23、制參數(shù)),但會(huì)保留字符串內(nèi)部作為詞與詞之間分隔的空格。=html5,c#,powerbuilder,mysql,oracle經(jīng)典學(xué)習(xí)視頻和文檔資料,本人多年收集的學(xué)習(xí)資料,里面主要包含:“html5, c#, powerbuilder ,mysql, oracle”需要加qq: 4 1 7 1 2 9 3 6 7 =第二部分:Pb的5個(gè)可編程對(duì)象概述:Application對(duì)象:程序執(zhí)行的起點(diǎn),全局編程Window對(duì)象和控件:用戶界面主要構(gòu)成對(duì)象Menu對(duì)象:調(diào)度中心。Userobject對(duì)象:重用。封裝。Function對(duì)象:重用和編程關(guān)系緊密的內(nèi)容
24、:界面設(shè)計(jì):常規(guī)設(shè)計(jì),標(biāo)準(zhǔn)設(shè)計(jì)函數(shù):600多個(gè)函數(shù),常用70多個(gè)事件:常用事件,理解觸發(fā)事件至關(guān)重要屬性:常用屬性Sql語言:數(shù)據(jù)處理的基礎(chǔ)。PB的編程語言:POWerScript嵌入式sql程序和時(shí)間的關(guān)系:Pb中所有程序的執(zhí)行都必須通過事件編程的規(guī)范性:能編程序不重要,重要的是編寫規(guī)范的程序?qū)崿F(xiàn)功能是基本要求,維護(hù)要求規(guī)范顯示編譯: ctrl + L 快捷鍵 快速替換: ctrl+H 標(biāo)識(shí)符:定義:所有程序員自己定義的名稱字母或者下劃線開頭長(zhǎng)度<=255不區(qū)分大小寫不能是保留字:比如 this 等關(guān)鍵詞就不能指代詞:This:代表當(dāng)前窗口 parent:所編程對(duì)象的容器控件Paren
25、twindow:當(dāng)前菜單所在的窗口。 Super:子對(duì)象引用父對(duì)象會(huì)用到。數(shù)據(jù)類型:1:保準(zhǔn)數(shù)據(jù)類型:字符型: string char數(shù)值型:注意各類型的取值范圍,和數(shù)據(jù)庫的同類型的數(shù)據(jù)精度是否匹配。類型有: integer(最大值65536) long double real decimal unsignedinteger unsignedlong 日期,時(shí)間型:date time datetime 布爾型:boolean Blob型:blob2:系統(tǒng)對(duì)象類型: create(創(chuàng)建) destroy(釋放內(nèi)存) browser3:枚舉型:4:Any型:運(yùn)行慢,編譯時(shí)不做類型檢查。第一章語言基
26、礎(chǔ)變量聲明:作用范圍:全局變量:整個(gè)target下所有對(duì)象都可訪問實(shí)例變量:window application menu userobject 范圍內(nèi)的變量本地變量:申明變量的事件或者函數(shù)內(nèi)變量聲明:注意聲明時(shí)賦值的特例格式:數(shù)據(jù)類型,變量名稱=初值位置:代碼的開頭規(guī)范:作用范圍+類型_變量名稱 例子:string ls_ss time lt_study類型轉(zhuǎn)換:20160712 第三天:運(yùn)算符和表達(dá)式:算術(shù)運(yùn)算符:+,-,-,*,/,關(guān)系運(yùn)算符:=,<,>,<>,>=,<=邏輯運(yùn)算符:not , and,or,聯(lián)接運(yùn)算符:+表達(dá)式和賦值:表達(dá)式:運(yùn)算符,
27、常量,變量,函數(shù)賦值和關(guān)系運(yùn)算符的區(qū)別:左側(cè)能否用常量,是否有返回值。分支語句:一:If語句:1:if 條件 then 語句2:if 條件then 語句End if3:if 條件 then 語句1Else語句2End if4:If 條件 then語句1Elseif 條件 then語句2End if5:If 條件 then語句1Elseif 條件 then語句2Else語句End if二:case 語句格式: choose case 表達(dá)式Case 取值語句.End chooseString ls_lsLs_ls=90Choose case ls_lsCase is ls_ls>90Mes
28、sagebox(提示,優(yōu)秀)Case is ls_ls>60Messagebox(提示,及格)Case is ls_ls<60Messagebox(提示,不及格)End Choose 關(guān)于取值:一個(gè)值,多個(gè)值列表,x to y, is 表達(dá)式,上述各種組合。注意:case 判斷的順序性 (由少范圍到多范圍)。循環(huán)語句:格式1:do while 條件語句模塊Loop格式2:Do語句模塊Loop while 條件格式3:Do until 條件語句模塊Loop格式4:Do語句模塊Loop until 條件注意:掌握其中一個(gè)就行 (通用掌握第一個(gè))循環(huán)語句2:格式1:For 變量=初值 t
29、o 終值語句模塊Next格式2:For 變量=初值 to 終值 step 步長(zhǎng)語句模塊NextSplit 功能的實(shí)現(xiàn)學(xué)習(xí)函數(shù):1:函數(shù)的作用2:函數(shù)的語法3:參數(shù)的含義4:返回值的含義5:常用編程Pos函數(shù):作用:查找一個(gè)字符串在另一個(gè)字符串中首次出現(xiàn)的位置(起始位置是1),語法:1:pos(str1,str2)2:pos(str1,str2,start)返回值: integer,從str1開始的位置,0表示沒找到。: 從start位置開始找str2在str1第一次出現(xiàn)的值。Left函數(shù):作用:得到指定字符串左側(cè)若干個(gè)字符語法:left(str1,len)返回值:string, 字符串Righ
30、t函數(shù)作用:得到指定字符串右側(cè)若干個(gè)字符語法:right(str1,len)返回值:string, 字符串Mid函數(shù):作用:得到指定字符串指定位置的一個(gè)子串語法:mid(str1,start,len) :從start開始取len個(gè)長(zhǎng)度。返回值:string, 字符串Len函數(shù):作用:得到字符串的長(zhǎng)度語法:len(str):str 代表你要判斷的字符串返回值:長(zhǎng)度Asc 函數(shù)作用:得到對(duì)應(yīng)的ascii語法:asc(char)返回值:數(shù)字,對(duì)應(yīng)的asciiChar 函數(shù):作用:得到和asxii對(duì)應(yīng)的字符語法:char(ascii)返回值:string Fill函數(shù):作用:反復(fù)填充得到指定長(zhǎng)度的字符
31、串語法:fill (str,len)返回值:string舉例:fill(english,6) 返回englis Fill(english,9) 返回englishenreplace函數(shù):作用:替換語法:replace(str1,start,len,str2)返回值:string舉例:replace (english1,5ch):返回:chsh 解釋:相當(dāng)于吧engli 替換成了ch顯示格式:t:表示一個(gè)制表位 新建一個(gè)tab Rn:回車n:空格例子:string ls_sls_s='a t b rn c t d'那么打印出來顯示的格式就是:a bc dmod函數(shù)作用:求余語法:
32、mod(n,m)返回值: integer ,余數(shù)舉例:mod(5,3)返回2,mod(4,2)返回0string 函數(shù):語法: string( var ,format)Var: 可以是 date , time datatime 類型的數(shù)據(jù)。Format: 是格式串, 比如: yyyy-mm-dd hh:mm:ss yy年mm月dd日continue : 結(jié)束本次循環(huán)exit:結(jié)束循環(huán)體return: 結(jié)束return以下所有代碼halt 和halt close :馬上結(jié)束整個(gè)應(yīng)用,halt close 在結(jié)束之前還執(zhí)行application的close事件。上機(jī):全角半角混雜內(nèi)容的統(tǒng)一轉(zhuǎn)換思路
33、:窮舉,對(duì)應(yīng)替換012345678定制事件:系統(tǒng)事件:對(duì)象上已經(jīng)提供的所有事件缺省事件:初次打開時(shí)默認(rèn)的事件自定義事件:有消息映射的 格式:ue_事件名指定制事件:無消息映射的,通過postEvent(稍后觸發(fā)) 或者TriggerEvent(馬上觸發(fā))函數(shù)觸發(fā)。語法: this.postevent(事件名)事務(wù):若干個(gè)操作的集合,作為一個(gè)整體要么都成功,要么都失敗。缺省的全局事務(wù)對(duì)象是SqlCA, PB所有和數(shù)據(jù)庫打交道的操作都要通過事務(wù)對(duì)象來完成。Connect:連接數(shù)據(jù)庫配送關(guān)于游標(biāo):可以使用sql返回多條數(shù)據(jù),并逐條處理使用步驟:1:聲明游標(biāo) 2:打開游標(biāo) 3:讀取第一條數(shù)據(jù) 4:do
34、 while循環(huán) 逐條處理數(shù)據(jù) 讀取下一條數(shù)據(jù) Loop 5.關(guān)閉游標(biāo)。-函數(shù)的定義: string gf_add(integer ai_add1 ,integer ai_add2)函數(shù)的作用:做加法運(yùn)算參數(shù)解釋:ai_add1 被加數(shù) ,ai_add2 加數(shù)返回值:integer類型, 兩數(shù)相加后的和調(diào)用舉例:li_temp = gf_add(10 , 45)編寫日期:編寫人 :改動(dòng)情況-Windoe對(duì)象:;公用屬性Visible:是否可見Enabled:是否可用X:控件左上角在橫向的位置Y:控件左上角在縱向的位置Width: 控件的寬度Height:控件高度*字體相關(guān)注意:上述為可視對(duì)象的
35、公用屬性,Window對(duì)象:常用屬性Title:窗口的標(biāo)題文字Menuname:窗口頂部菜單,mdi 必需的。Windowstate:窗口打開時(shí)的初始狀態(tài)Windowtype:窗口類型:Main:整個(gè)應(yīng)用中只有一個(gè),主窗口,可以獨(dú)立存在Child:不可獨(dú)立存在的,顯示范圍限于主窗口Popup:顯示范圍不局限于主窗口。不可獨(dú)立存在Response:資源獨(dú)占式的窗口。(必須結(jié)束該窗口才能操作其他的,用于重要的提示信息)MDI 一個(gè)沒有microhelp狀態(tài)欄框架。 mdihelp 一個(gè)microhelp狀態(tài)欄MDI框架。 注意:是MDI 或者mdihelp 窗口類型時(shí),會(huì)有一個(gè)隱藏的mdi_1的控
36、件!ControlMenu:是否有控制菜單Maxbox:是否有右上角的最大化Minbox:是否有右上角的最小化Titlebar:窗口的標(biāo)題欄Window對(duì)象: 常用事件1 Open 事件:*觸發(fā)時(shí)機(jī):窗口打開時(shí)出發(fā),界面尚未顯示出來。*常用編程:初始化工作*忌用編程:耗時(shí)的程序不要在此編寫* 思考:如何在窗口打開時(shí)編寫耗時(shí)的程序。自定義事件:*復(fù)習(xí)自定義事件*解決Open事件中不能編寫耗時(shí)的程序。*事件的觸發(fā): postEvent 和triggerEvent POSTEVENT()是在其所在事件結(jié)束后執(zhí)行,而TRIGGEREVENT()則是立即執(zhí)行所調(diào)用的事件。取名規(guī)則:ue_?語法:this
37、.postevent(事件名)函數(shù)的取名規(guī)則:gf_?。Close事件:l 觸發(fā)時(shí)機(jī):窗口關(guān)閉時(shí)觸發(fā),界面已經(jīng)消失。l 常用編程:釋放對(duì)象型變量,保存工作環(huán)境。CloseQuery事件:*觸發(fā)時(shí)機(jī):窗口關(guān)閉之前觸發(fā)*常用編程:關(guān)閉確認(rèn)*忌用編程:耗時(shí)的程序不要在此編寫。*返回值:0-允許關(guān)閉, 1-不允許關(guān)閉Resize事件:*觸發(fā)時(shí)機(jī):窗口大小改變時(shí)。*常用編程:動(dòng)態(tài)調(diào)整窗口中控件的布局。*事件參數(shù):NewWidth , NewHeight*編程要點(diǎn):坐標(biāo)起點(diǎn),主控體,逐個(gè)參照編寫。*補(bǔ)充: 能夠適應(yīng)不同分辨率的整體解決方案。Timer 事件:*Timer(integer N) N-間隔的秒
38、數(shù) N=0表示不再觸發(fā)timer事件。*觸發(fā)時(shí)機(jī):每隔指定的秒數(shù)后自動(dòng)觸發(fā)*timer 函數(shù):設(shè)定間隔時(shí)間。* 常用編程:處理周期性事件*編程注意:執(zhí)行用時(shí)不能接近間隔時(shí)間,更不能大于間隔時(shí)間。OpenWithparm(函數(shù)) 打開時(shí)傳遞信息語法:OpenWithparm(打開的窗口的名稱 , 要傳遞的信息)Closewithreturn (函數(shù)) 關(guān)閉時(shí)傳遞信息語法:Closewithreturn (關(guān)閉窗口的名稱 , 信息)Message: 全局缺省的消息對(duì)象。Tab_1.selecttab(index) 切換到指定的tabpag上。Idle 函數(shù)Idle(n ) : 設(shè)置空閑若干秒后觸發(fā)
39、的idle事件Finditem() 函數(shù)Handle=Tv_1.finditem(navigationcode , handle)第一個(gè)參數(shù):枚舉類型下一個(gè)節(jié)點(diǎn): Nexttreeltem! 父節(jié)點(diǎn): parenttreeitem! 子節(jié)點(diǎn): childtreeltem 根節(jié)點(diǎn):rootTreeItemInsertItemLast() 函數(shù)語法1:treeviewname.InsertItemLast ( handleparent, label, pictureindex )語法2:treeviewname.InsertItemLast ( handleparent, item )Item:
40、treeviewitem類型的變量。常用變量有:data label pictureindex selectedpictureindexGetitem() 函數(shù)語法:treeviewname.GetItem ( itemhandle, item):得到指定節(jié)點(diǎn)的數(shù)據(jù)。Item: treeviewitem類型的變量。listbox:控件用途:顯示一列數(shù)據(jù)的清單常用屬性:sorted ,items 常用事件:event selectionchanged( /*integer index */)常用函數(shù): dirlist ,reset, totalitems,text.additem一:lb_1.d
41、irlist ('要獲取文件的路徑',type) type:數(shù)字,查幫助 作用: 將指定目錄中的文件清單放到lb_1中。二:lb_1.reset() 作用:清除掉lb_1中的所有數(shù)據(jù)。三: lb_1.totaliteme() 作用:計(jì)算lb_1中有多少項(xiàng)。四:lb_1.text(index) 作用:獲取第index項(xiàng)的文字內(nèi)容。五:lb_1.additem(text) 作用:增加一個(gè)項(xiàng)目,內(nèi)容是text里面的內(nèi)容。getfolder(title, dir)title: 對(duì)話框標(biāo)題dir: 缺省目錄,保存返回目錄作用:返回用戶選擇的目錄返回值:1 -選擇了目錄。 2-取消Pb支持
42、的圖片文件:Bmp gif jpg wmf RLEGetCurrentDirectory():獲取當(dāng)前路徑.Setprofilesgtring( string file, string section ,string key,string value)函數(shù)作用:寫配置文件返回1 或者 -1,1表示成功,-1表示失敗。例:setprofilestring( gs_path +sttup.ini , db ,dbms, ls_temp)Setprofilestring(路徑,文件名,節(jié),點(diǎn),內(nèi)容)Profilestring( string file, string section ,string
43、key,string default)函數(shù)作用:讀取配置文件返回讀取到的內(nèi)容。如果無法讀取,則返回default.=Dw_1.InsertRow(row)作用: 指定行之前插入新空白行,0表示在最后插入返回值:新插入的行的行號(hào)。Dw_1.GetRow()作用:返回當(dāng)前行返回值:當(dāng)前行的行號(hào)。Dw_1.deleterow(row)作用: 刪除數(shù)據(jù)窗口中的第row行。Dw_1.scrollpriorpage ()作用: 前翻頁Dw_1.scrollNextPage()作用: 后翻頁Dw_1.update()作用: 保存數(shù)據(jù)返回值: 1-保存成功, 否則不成功Commit using 事務(wù)對(duì)象名稱;
44、 提交事務(wù)Rollback using 事務(wù)對(duì)象名稱; 回退事務(wù)SQLCA 事務(wù)管理 transaction類型Dw_1.settransobject(transaction) /不自動(dòng)管理事務(wù).Dw_1.setTrans() /自動(dòng)管理事務(wù),不提倡作用 : 為數(shù)據(jù)窗口控件綁定事務(wù)對(duì)象Dw_1.retrieve()作用:檢索數(shù)據(jù)特性: 參數(shù)的個(gè)數(shù),類型不固定。Dw_1.ModifiedCount()作用:判斷數(shù)據(jù)窗口中有多少行數(shù)據(jù)被改動(dòng)過返回值: long類型。修改過的行數(shù)。Dw_1.deleted Count()作用:判斷有多少行數(shù)據(jù)被刪除返回值:刪除的行數(shù),long類型。dw_1.RowC
45、ount()作用:判斷一共有多少行數(shù)據(jù),返回值: long類型26課:ItemChanged 事件觸發(fā)時(shí)機(jī):數(shù)據(jù)改變之前觸發(fā)該事件事件參數(shù):data Dwo data:保存臨時(shí)修改的值。Dwo 常用屬性:D 當(dāng)前操作的對(duì)象的名稱,Dwo.coltype 當(dāng)前操作的列的數(shù)據(jù)類型Dwo.type 當(dāng)前操作的對(duì)象的類型。(類型包括:靜態(tài)文本.列,圖片.)忌用編程:不要編寫耗時(shí)的程序。Dw_1.GetltemNumber(row ,col) 相似有:Dw_1.Getltemstring Dw_1.Getltemdate Dw_1.Getltemdatetime作用: 得到數(shù)據(jù)窗口控件中指
46、定的行,列中的數(shù)據(jù)。Dw_1.setitem(行,列,值)作用: 給指定單元賦值行:long型,列 :string 或者integer型。 值:任意要和對(duì)應(yīng)的列的類型一致即可。Round(數(shù)字,位數(shù))作用: 進(jìn)行四舍五入 round(3.14123454,3) 返回:3.141-LoseFocus事件觸發(fā)時(shí)機(jī):數(shù)據(jù)窗口失去焦點(diǎn)時(shí)觸發(fā)Modified: 觸發(fā)原理是: 輸入完類容之后按回車鍵或者焦點(diǎn)移動(dòng)到其他地方的時(shí)候觸發(fā)。常用編程:調(diào)用AcceptText()函數(shù),避免丟失數(shù)據(jù)Dw_1. AcceptText():接收在編輯控件中的數(shù)據(jù)。只要是做數(shù)據(jù)錄入的 都必須寫上如圖所示的代碼:-ItemE
47、rror 事件觸發(fā)時(shí)機(jī):?jiǎn)卧袃?nèi)容(數(shù)據(jù)類型)發(fā)生錯(cuò)誤時(shí)觸發(fā)該事件。常用編程: 顯示錯(cuò)誤提示事件參數(shù): Row(發(fā)生錯(cuò)誤的行號(hào)) DWD Data(發(fā)生錯(cuò)誤的數(shù)據(jù))返回值: 0:放棄數(shù)據(jù)顯示提示, 1:放棄數(shù)據(jù)不提示, 2;接收數(shù)據(jù) 3:放棄數(shù)據(jù),允許焦點(diǎn)改變DBError事件:觸發(fā)時(shí)機(jī):在數(shù)據(jù)窗口和數(shù)據(jù)庫打交道發(fā)生錯(cuò)誤時(shí)觸發(fā)該事件。事件參數(shù): SQLdbCode-錯(cuò)誤代碼 SQLErrText錯(cuò)誤信息 SQLSyntax-錯(cuò)誤語法 Row錯(cuò)誤行號(hào)重用編程:顯示錯(cuò)誤信息返回值:0-顯示錯(cuò)誤信息 1-不顯示錯(cuò)誤信息RowFocusChanged事件:觸發(fā)時(shí)機(jī): 行焦點(diǎn)改變時(shí)觸發(fā)該事件事件參數(shù):
48、CurrentRow常用編程: 改變當(dāng)前行的標(biāo)志, 做主從式應(yīng)用。CurrentRow: 當(dāng)前行row:當(dāng)前選擇行的行號(hào)。Dw_1.AcceptText()作用: 接受在編輯控件中的數(shù)據(jù)。Dw_1.selectRow(Row,flag)作用:選中或者取消選中的行。Row 0,表示對(duì)所有的行進(jìn)行操作,否則就是對(duì)指定的行操作。Flag Boolean 類型, true表示選中, false表示取消選中舉例:Dw_1.selectRow(0,false) /取消所有行的選中狀態(tài)Dw_1.SelectRow(10,true) / 選中第10行Clicked事件觸發(fā)時(shí)機(jī):點(diǎn)擊數(shù)據(jù)窗口時(shí)觸發(fā)該事件時(shí)間參數(shù)
49、: dwo Row常用編程: 多行選中,表頭排序忌用編程: 不要和RowFocusChanged 事件混用。KeyDown(keycode)作用:判斷是否按下了指定的鍵Keycode:枚舉型,Keyshift! :表示shift鍵Keycontrol! :表示ctrl鍵返回值: true 表示按下了 false 表示沒有按下Dw_1.IsSelected(Row)作用: 判斷Row這一行是否是選中的返回值: ture 表示選中了, false 表示沒選中GetSelectedRow(Row)作用:在row行之后查找第一個(gè)選中行的行號(hào)返回:> row的第一個(gè)被選中的行的行號(hào),row=0 表
50、示重頭開始查找。 retrieveStart :開始檢索前觸發(fā)。RetrieveRow: 每檢索一行數(shù)據(jù)觸發(fā)一次。RetrieveRow: 檢索結(jié)束時(shí)執(zhí)行。-SetProfileString(string file ,string section,string key,string value)函數(shù)作用:寫配置文件。返回1 或者-1: 1表示成功,-1 表示失敗。例:SetprofileString(gs_path + setup.ini,db,dbms,ls_temp)profileString(string file,string section,string key,string defaul
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 訂貨協(xié)議法律效力
- 代理收款合同模板
- 技術(shù)教育與培訓(xùn)
- 招標(biāo)文件范本搖號(hào)定標(biāo)的法律要求
- 工薪族鞋購買協(xié)議
- 地鐵項(xiàng)目施工方案招標(biāo)
- 招標(biāo)采購合同中的合同解除管理程序
- 招標(biāo)文件示范文本
- 筆記本電腦購銷合同樣本
- 服務(wù)合同范本集合
- 裝修逾期索賠合同范例
- 【MOOC】全新版大學(xué)進(jìn)階英語綜合教程II-內(nèi)蒙古大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 印刷保密協(xié)議
- 輔導(dǎo)員年終匯報(bào)
- 中國(guó)當(dāng)代文學(xué)專題-003-國(guó)開機(jī)考復(fù)習(xí)資料
- 【MOOC】綜合英語-中南大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 2025年1月“八省聯(lián)考”考前猜想卷歷史試題02 含解析
- 人教版2025九年級(jí)道德與法治中考備考復(fù)習(xí)計(jì)劃
- 預(yù)防校園欺凌主題班會(huì)課件(共36張課件)
- 24春國(guó)家開放大學(xué)《教育心理學(xué)》終結(jié)性考核參考答案
- 基于PLC的熱水箱恒溫控制系統(tǒng)
評(píng)論
0/150
提交評(píng)論