PowerBuilderR程序設(shè)計與系統(tǒng)開發(fā)_第1頁
PowerBuilderR程序設(shè)計與系統(tǒng)開發(fā)_第2頁
PowerBuilderR程序設(shè)計與系統(tǒng)開發(fā)_第3頁
PowerBuilderR程序設(shè)計與系統(tǒng)開發(fā)_第4頁
PowerBuilderR程序設(shè)計與系統(tǒng)開發(fā)_第5頁
已閱讀5頁,還剩80頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、精選pptPowerBuilder 程序設(shè)計與系統(tǒng)開發(fā)程序設(shè)計與系統(tǒng)開發(fā)精選pptPowerBuilder 程序設(shè)計與系統(tǒng)開發(fā)第一節(jié)、PowerBuilder基本原理第二節(jié)、基本知識(C/S,數(shù)據(jù)庫)第三節(jié)、對象及控件的基本屬性及方法第四節(jié)、數(shù)據(jù)窗控件(Datawindow)的特性及方法第五節(jié)、基本應(yīng)用(Application)的建立第六節(jié)、PFC(Powerbuilder Founder Class)技術(shù)原理及實現(xiàn)。第七節(jié)、與數(shù)據(jù)庫系統(tǒng)集成進行開發(fā)基本技術(shù)及方法第八節(jié)、高級編程技術(shù)精選ppt內(nèi)容簡介n關(guān)于 PB(About PowerBuilder).n使用場合(Where)?n誰需要 (W

2、ho)?n與數(shù)據(jù)庫如何交互(How)?n學(xué)習(xí)內(nèi)容(課程內(nèi)容)(What)?精選ppt關(guān)于 PowerBuilder Power Builder 最新版本為8.0。由Sybase公司出品,最早是由PowerSoft公司開發(fā)并發(fā)布銷售的,并出品了到Power Builder 5.0為止的各個版本,初期在廣大開發(fā)人員中反映并不強烈,到1995年左右,由Sybase收購PowerSoft公司開始并成功推出了Power Builder 6.0版本,由此開始,由于它的易用性、數(shù)據(jù)窗專利技術(shù)、對各種流行RDBMS的廣泛支持、獨特的開發(fā)方法及理念、獨特的對象編程技術(shù)等等,成為現(xiàn)在為止可能是世界上用于數(shù)據(jù)庫前端

3、開發(fā)的最快捷、最方便、最強大的工具,一般而言,對一個小型的系統(tǒng),在系統(tǒng)充分分析好的前提下,熟悉的程序員可以在一周以在系統(tǒng)充分分析好的前提下,熟悉的程序員可以在一周以內(nèi)完成一個獨立的系統(tǒng)。內(nèi)完成一個獨立的系統(tǒng)。這對于其他數(shù)據(jù)庫系統(tǒng)前端開發(fā)工具,如VB,Delphi,VFP,ORACLE Develop 2000等等,如果你用過這些工具,簡直無法想象。雖然現(xiàn)在流行的開發(fā)工具并不是PB,因為現(xiàn)在到處都是B2B,B2C,PB在這方面能夠?qū)崿F(xiàn),但比較其它專門工具而言,并不具有非常大的優(yōu)勢,而且實現(xiàn)的技術(shù)比較而言相對復(fù)雜。但對于C/S結(jié)構(gòu)的數(shù)據(jù)庫應(yīng)用及Internet而言,Power Builder仍然是

4、非常好的選擇。精選pptPowerBuilder應(yīng)用場合1、大型數(shù)據(jù)庫系統(tǒng)C/S模式前端開發(fā)工具或B/S模式應(yīng)用服務(wù)器開發(fā)工具,一般應(yīng)用于需要大型或中型數(shù)據(jù)庫系統(tǒng)支持(如ORACLE,Sybase,MS SQL Server,DB2,Informix)作為后臺數(shù)據(jù)支撐平臺的管理類系統(tǒng),一般可以承受千萬級紀(jì)錄量的系統(tǒng),如: MRPII系統(tǒng) 物料資源計劃 ERP系統(tǒng) 企業(yè)資源計劃 CRM Customer Relation Management(客戶關(guān)系管理) Call Center 呼叫中心(Haier)2、中、小型數(shù)據(jù)庫系統(tǒng)開發(fā),一般數(shù)據(jù)量為10萬左右,支持并發(fā)或僅單機用戶,如中、小型企業(yè)的內(nèi)

5、部信息管理、各種小型軟件、共享軟件等;3、與Sybase的Power Dynamo,Jaguar CTS,Power Site等集成,建立電子商務(wù)應(yīng)用服務(wù)支撐平臺;4、與PHP,Java,ASP集成,作為Intranet或Internet的后臺數(shù)據(jù)庫系統(tǒng)維護工具,如異種平臺(Unix,Linux,Solaris,NT)上的ORACLE,MySQL,DB2等的Client方式維護。精選ppt誰需要 PowerBuilder PB可以做的事情很多,因此也就成為現(xiàn)在各軟件公司進行系統(tǒng)開發(fā)的一種常用工具,如果你將從事下列工作或有這些需求,則最好了解或通曉PB:1、數(shù)據(jù)庫系統(tǒng)前端開發(fā)中的程序設(shè)計;2、開

6、發(fā)咨詢或技術(shù)支撐;3、數(shù)據(jù)庫系統(tǒng)分析及設(shè)計;4、需要掌握VB,Delphi,Developer 2000以外的其他工具;5、了解Internet網(wǎng)站建設(shè)中可以保護現(xiàn)有PB資源的開發(fā)方式;注意:PB與數(shù)據(jù)庫系統(tǒng)是不可分離的,因此,你只有對DBMS有基本的理解才可能用好PB,精通當(dāng)然最好。如果你不知道DBMS是什么東西,請先學(xué)習(xí)相關(guān)內(nèi)容,如南京大學(xué)數(shù)據(jù)庫系統(tǒng)概論是非常好的入門教材,各流行數(shù)據(jù)庫系統(tǒng)的基本概念都涵蓋了。精選pptPB 與數(shù)據(jù)庫交互原理簡介PowerBuilder的吸引人的地方也就是它的數(shù)據(jù)窗技術(shù),描述為:1、前端(Client)建立獨立的Transaction(緩沖區(qū),事務(wù)對象),用

7、于響應(yīng)用戶請求及返回執(zhí)行結(jié)果;2、任何事務(wù)都必須在某Transaction中執(zhí)行,默認為SQLCA(SQL Connection Area),如 select * from table_xxx using sqlca;Dw_xxx.settransobject(sqlca);3、數(shù)據(jù)窗通過Transaction提取數(shù)據(jù)、編輯數(shù)據(jù)、再根據(jù)需要回寫數(shù)據(jù),并保證在同一事務(wù)內(nèi),這樣就完成了日常的數(shù)據(jù)的維護、更新等操作。4、數(shù)據(jù)窗現(xiàn)在已經(jīng)作為標(biāo)準(zhǔn)的ActiveX可編程對象,可以嵌入到其他程序中使用,但總是在PB中最方便,具有專利技術(shù)的數(shù)據(jù)窗集成了數(shù)據(jù)編輯的幾乎所有的常用算法、操作方式等等,非常方便。5、

8、實際應(yīng)用中,通過眾多的數(shù)據(jù)窗和其它標(biāo)準(zhǔn) Windows控件協(xié)調(diào)運行,就完成了最基本的功能。實際上遠遠不止這些精選ppt課程內(nèi)容內(nèi)容:nPower Builder基本原理;nPB基本知識(對象、函數(shù)、事件、變量、腳本、繼承);n對象及控件的基本屬性及方法;n數(shù)據(jù)窗控件(Data window)的特性及方法;n基本應(yīng)用(Application)的建立;n與數(shù)據(jù)庫系統(tǒng)集成進行開發(fā)基本技術(shù)及方法;nPFC(Power builder Founder Class)技術(shù)基本原理;n編程完成上機作業(yè),期未驗收。精選pptPowerBuilder基本原理n編程原理n開發(fā)界面n庫(Library)管理n基本對象

9、及控件n運行方式精選pptPowerBuilder運行原理開發(fā)支持庫開發(fā)(PBLs)編譯(Pcode,Mcode)應(yīng)用(Application:DLL,Exe,PBD)BugFixing運行支持庫DBMS發(fā)布(InstallShield)精選pptPowerBuilder基本原理 - 開發(fā)界面腳本預(yù)覽菜單工具條對象屬性面板函數(shù)及事件狀態(tài)條精選pptPowerBuilder基本原理 - 開發(fā)界面說明:1、PB開發(fā)為標(biāo)準(zhǔn)的MDI方式,即對應(yīng)不同的開發(fā)對象,有它不同的菜單及工具條,對應(yīng)不同的功能;2、可以創(chuàng)建的對象包括4大類:對象(窗口、函數(shù)、結(jié)構(gòu)、菜單)數(shù)據(jù)窗對象(Grid,Free Form,T

10、abular,Label,N-Up)數(shù)據(jù)庫(Database Profile,Query,Pipeline)工程(Application,Proxy Library,COM CTS,OLE2,Java Proxy)3、常用工具Library,Editor,Class viewBrowser,DB Profile Editor,Debugger,DW Syntax等精選ppt數(shù)據(jù)庫基本知識 -1一、C/S模式圖示DB ServersTCP/IP發(fā)送發(fā)送SQL語句語句到數(shù)據(jù)庫服務(wù)器到數(shù)據(jù)庫服務(wù)器返回返回SQL語句語句查詢結(jié)果到客戶機查詢結(jié)果到客戶機WinNT,Linux,UnixMicrosoft

11、 SQL ServerORACLESybase,DB2,InformixClientsServersClientsClients1、客戶端運行自己的程序,向服務(wù)器發(fā)送SQL請求及取回結(jié)果。2、服務(wù)器偵聽網(wǎng)絡(luò),響應(yīng)請求并返回處理結(jié)果。精選ppt物理設(shè)備數(shù)據(jù)庫基本知識 -2 二、數(shù)據(jù)庫系統(tǒng)基本組成DBMSApplications(應(yīng)用)網(wǎng)絡(luò),協(xié)議介質(zhì),接口DB Tools(管理工具)存儲管理數(shù)據(jù)庫管理數(shù)據(jù)庫中的對象管理4.函數(shù)、包精選ppt數(shù)據(jù)庫基本知識 -3n表單(Table):由屬性和記錄構(gòu)成的二維關(guān)系表;n視圖(View):基于單表或多表的查詢;n存儲過程(Store procedure):

12、存儲于數(shù)據(jù)庫服務(wù)器上的一系列操作的合集,由服務(wù)器執(zhí)行,可以增強可管理性和運行效率;n觸發(fā)器(Triggers):當(dāng)對表的某種操作發(fā)生時,就引發(fā)其他的一些邏輯處理;n索引(Index):服務(wù)于快速查詢,寄生于表的一種服務(wù);n函數(shù),包(function,package):類似于存儲過程;n數(shù)據(jù)庫(database):上述各對象的集合;n設(shè)備(device,tablespace,datafile):存放數(shù)據(jù)庫的物理定義;n日志(log):記錄對數(shù)據(jù)庫的任何操作,用于備份和恢復(fù);n用戶(User):可以使用數(shù)據(jù)庫中具體內(nèi)容的人員定義;n角色(Role):給同一用戶賦予不同的角色,享有不同的權(quán)限;n權(quán)限

13、(Privilege):賦予用戶操作數(shù)據(jù)的權(quán)限;三、關(guān)系數(shù)據(jù)庫系統(tǒng)基本概念精選ppt數(shù)據(jù)庫基本知識 -4 Sybase 隨PB發(fā)行的Adaptive Server Anywhere (ASA) 6.0 是短小精悍的個人數(shù)據(jù)庫系統(tǒng),支持了大多數(shù)的關(guān)系數(shù)據(jù)庫操作。如日志、事務(wù)、用戶、觸發(fā)器,并提供管理中心(Sybase central)來管理數(shù)據(jù)庫的內(nèi)容,在PB中,一個小型的數(shù)據(jù)庫應(yīng)用用ASA作為后臺數(shù)據(jù)庫已經(jīng)完全可以勝任。本課程的后臺數(shù)據(jù)庫將主要放在ASA。Sybase Central實際上是以插件方式運行的,他可以管理Sybase產(chǎn)品中的大多數(shù),如Sybase Enterprise (SYE)

14、數(shù)據(jù)庫, Jugar CTS PowerDynamo, 等等.提供了統(tǒng)一的界面。當(dāng)然也可以通過SQL語句來管理數(shù)據(jù)庫。包括建表、索引、存儲過程、觸發(fā)器,數(shù)據(jù)更新,授權(quán)等等都可以通過SQL語句來執(zhí)行。下面將通過演示來講解關(guān)于Sybase Central的使用,特別是如何建庫,建表等操作。四、ASA中的數(shù)據(jù)庫管理精選ppt應(yīng)用 - Applicaitonn如何建立應(yīng)用(Application)n事件及腳本(Events and Scripts)n連接(Transaction)n入口(Start Pointer)精選ppt1、Menu-File-New-Application(菜單-文件-新建-開始

15、向?qū)?Application)2、選擇應(yīng)用名稱和存放的庫文件一個應(yīng)用就建立完畢。實際上這個應(yīng)用沒有任何腳本、窗口,也沒有處理任何事情。應(yīng)用建立完畢后,PB自動建立了一個PBL文件(PowerBuilder Library),并在這個PBL文件中創(chuàng)建了一個Application entry(應(yīng)用條目)一般,一個應(yīng)用都有一個主窗口,由這個窗口負責(zé)和用戶的交互過程,而在應(yīng)用的open事件的腳本中處理的就是如何打開這個窗口,如何和數(shù)據(jù)庫建立連接,如何初始化一些全局變量,關(guān)閉應(yīng)用時(Close事件)做如何處理等等。如:Open事件:.connect using sqlca;open(w_main_fra

16、me)Close事件:disconnect using sqlca;destroy xxxx就是在譬如,建立應(yīng)用名為pb_lesson,存放庫名為lesson.pbl,則在lesson.pbl中就存在了一個pb_lesson的條目,當(dāng)然,可以在其他pbl中創(chuàng)建一個新的application.精選ppt應(yīng)用 - 2.事件及用途(1)Application的事件Open當(dāng)一個應(yīng)用執(zhí)行時,即觸發(fā)此事件,實際上就是程序的入口,一般處理一些公用變量,公用對象,連接數(shù)據(jù)庫,打開主窗口等操作;Close當(dāng)主窗口關(guān)閉后觸發(fā)此事件,如果沒有打開任何窗口,則在Open事件后直接觸發(fā)此事件,一般在這個事件中斷開連接

17、,清除變量等操作;Connectiongbegin當(dāng)連接開始時觸發(fā)此事件,由connect 函數(shù)直接觸發(fā)此事件Connectionend當(dāng)連接結(jié)束后觸發(fā)此事件,由disconnect函數(shù)觸發(fā)Idle idle(xxx second)函數(shù)觸發(fā),既當(dāng)系統(tǒng)處于等待狀態(tài)指定秒數(shù)xxx后觸發(fā)該事件,一般處理如關(guān)閉系統(tǒng),提醒用戶等Systemerror當(dāng)程序運行發(fā)生任何系統(tǒng)錯誤時觸發(fā)該事件,一般處理記錄錯誤,提醒用戶等操作。常用事件常用事件:open,close,systemerror精選ppt應(yīng)用 - 2.事件及用途(2)腳本(scripts)編寫基本知識 一般依賴于某事件或函數(shù),由事件或函數(shù)觸發(fā)而執(zhí)行

18、,由換行或;表明一條語句的結(jié)束,如Connect using sqlca;Open(w_main_frame)Disconnect using sqlca; 任何嵌入式SQL都必須用;來表明該語句的結(jié)束,如Select student_name into :ls_name from table_1 where col_1 = hello; 大小寫不敏感,如ls_name 和LS_Name表明同一個變量或?qū)ο?可以在一行寫多條語句,用;隔開。如ls_name=xxx;ls_name2=yyy;li_cnt=2; 變量或?qū)ο蟮囊们氨仨毬暶鳎鐂tirng ls_name=abc /初始值ls_n

19、ame=LiujiangangMessagebox(Hello,My Name is +ls_name)就是彈出一個消息框,并提示標(biāo)題為Hello,內(nèi)容為 My Name is Liujiangang 的內(nèi)容。并顯示確認按鈕用來接受用戶響應(yīng)。精選ppt應(yīng)用 - 3.連接(1)一般地,在數(shù)據(jù)庫前端開發(fā)中,都連接到某數(shù)據(jù)庫服務(wù)器的某數(shù)據(jù)庫,或者連接到本地的某數(shù)據(jù)庫或ODBC源,而連接一般是在應(yīng)用的Open事件中處理的,在Close事件中關(guān)閉此連接,連接實際上是Transaction對象,該對象有下列常用屬性:DBMS:指定數(shù)據(jù)庫管理系統(tǒng)的名稱,如O84 ORACLE 8.0.4,ODBCServe

20、rName:指定數(shù)據(jù)庫服務(wù)器名稱,如EPCS_LOCAL,MSS_DB等Database:指定數(shù)據(jù)庫服務(wù)器上的數(shù)據(jù)庫,如MaterialDBUserID:指定數(shù)據(jù)庫用戶的ID號,如dboUserPassLogID:指定用于連接到數(shù)據(jù)庫服務(wù)器的用戶ID號,如 connectorLogPassDBParm:附加的連接參數(shù),如ApplicaitonName=“asdfadsf”等,隨DBMS而變化AutoCommit:是否自動提交,如True,false以上這些參數(shù)對特定的DBMS不是都必需的,一般DBMS,ServerName,都必須指定。其他屬性(該對象創(chuàng)建后才具備):SQLCode:最近SQL

21、語句執(zhí)行的PB結(jié)果碼,0,-100,-1三個數(shù)值SQLDBCode:最近事務(wù)中SQL語句返回的數(shù)據(jù)庫操作返回碼;SQLErrtext:最近操作的錯誤信息;SQLNRows:最近操作返回的結(jié)果數(shù)據(jù);一般,一個應(yīng)用中已有默認的Transaction存在,即SQLCA,因此,在Application的OPEN事件中就可以指定它的具體屬性用來連接數(shù)據(jù)庫,如/ Profile pb_classSQLCA.DBMS = ODBCSQLCA.AutoCommit = FalseSQLCA.DBParm = ConnectString=DSN=pb_class;UID=;PWD=;“精選ppt應(yīng)用 - 3.連

22、接(2)就指定了Transaction SQLCA的屬性,然后就可以用數(shù)據(jù)庫的四個方法中的Connect來處理如一個Application的常用的Open事件腳本為:SQLCA.DBMS = ODBCSQLCA.AutoCommit = FalseSQLCA.DBParm = ConnectString=DSN=pb_class;UID=;PWD=;“Connect using sqlca;If sqlca.sqlcode = -1 then Messagebox(Error,cannt Connect to Server+sqlca.serverName,stopsign!)halt clo

23、se / 終止并處理Application的Close事件End ifOpen(w_frame)精選ppt 一個系統(tǒng)的入口就是Application的Open事件,但是一般在這個事件中打開某窗口,如Open(w_frame) 主要的事務(wù)就由w_frame來處理了。此時Application仍繼續(xù)運行著并監(jiān)控著W_frame的狀態(tài),一旦W_frame結(jié)束,就觸發(fā)Close事件。精選ppt窗口 - Window窗口概述1、窗口(Window)是程序和用戶進行交互的主要界面,類似于VB或Delphi的Form(窗體),在窗口上可以布置各種不同類型的控件以滿足程序的要求,各控件間相互協(xié)作,完成預(yù)定功能

24、。2、一個窗口可以只被打開一次或者作為一個實例變量而被創(chuàng)建(實例化)然后打開多次。3、任何窗口的最底層基類都是windows,可以逐級繼承,對于節(jié)省代碼開支,界面一致性等非常有好處。4、數(shù)據(jù)窗作為標(biāo)準(zhǔn)控件可以直接嵌入到窗口中使用。精選ppt有2種方式創(chuàng)建一個窗口:1.新建: 從菜單中選擇“文件-新建”,彈出新建向?qū)Вx擇“對象-Windows”,系統(tǒng)就自動創(chuàng)建一個標(biāo)題為 Untitled 的空窗口,沒有任何腳本,但可以被打開。2.繼承:菜單中選擇“繼承”,彈出可被繼承的祖先清單,選擇一個,系統(tǒng)自動從該祖先窗口繼承,新窗口擁有祖先窗口的所有特性及腳本,并可以重載及覆蓋這些屬性或腳本。創(chuàng)建并修改完

25、成,按Ctrl+S或文件-保存,輸入窗口名稱并制定放在那個PBL中,該窗口就可以被調(diào)用了。注意點: 基于繼承的窗口,一旦祖先的屬性修改,則該窗口中沒有被重載或覆蓋的部分即自動修改,實際上該窗口分為2部分:祖先和自己。精選ppt窗口 - 2 窗口的基本屬性窗口的屬性非常多(41個),仔細理解屬性的具體用途及含義對用好窗口對象非常重要。常用屬性:屬性名稱含義標(biāo)題(Title):定義該窗口的標(biāo)題欄;類型(Window Type)定義該窗口的類型:Main! - 主窗口,常用方式Popup - 彈出式窗口,用來為其它窗口提供支持信息Child! 由父窗口打開,并且只能在父窗口范圍內(nèi)存在Response

26、! -用于輸入信息,模式窗口MDI!,MDIhelp! - 多文檔窗口菜單(MenuName)對Main,MDI,mdihelp類型的窗口有效,設(shè)置該窗口的菜單名稱外觀屬性外觀:enabled,visible,titlebar,maxbox,minbox,resizeable,border,backcolor,mdiclientcolor,HscrollBar,VScrollBar等等位置:x,y,width,height,pointer菜單: toolbarvisible,toolbaralignment,toolbarx,toolbarY,toolbarWidth,ToolbarHeigh

27、t運行態(tài)屬性(只讀,描述性質(zhì))Control,menuid運行態(tài)屬性bringtotop精選ppt窗口共支持以下33種標(biāo)準(zhǔn)控件1CommandButton命令按鈕(cb_ok,cb_cancel)18HScrollBar水平滾動條2PictureButton圖形按鈕(pb_ok,pb_cancel)19VScrollBar垂直滾動條3CheckBox檢查框(cbx_choice_1)20HTrackBar 水平導(dǎo)軌4RadioButton收音機按鈕(單選按鈕)(rb_tes)21VTrackBar 垂直導(dǎo)軌5StaticText靜態(tài)文本(st_notice)22HProgressBar 水平進

28、度條6StaticHyperLink文本超級連接(shl_1)23VProgressBar 垂直進度條7Picture圖形(p_1)24DropDownListBox下拉列表框(ddlb_8PictureHyperLink圖形超級連接(phl_1)25DropDownPictureListBox下拉圖形列表框(ddplb_9GroupBox分組框26ListBox列表框(lb_)10Line線條27PictureListBox圖形列表框11Oval橢圓28ListView列表視圖12Rectangle矩形29TreeView樹13RoundRectangle圓角矩形30Tab標(biāo)簽14Singl

29、eLineEdit單行編輯(sle_test)31DataWindow數(shù)據(jù)窗15EditMask掩碼編輯(em_year)32Graph圖表16MultiLineEdit多行編輯33OLEOLE2對象17RichTextEdit富文本編輯34UserObject用戶自定義控件(對象)精選ppt這些控件各自有自己的屬性,事件及函數(shù)(Properties,Events,Functions),以后我們將穿插在各章節(jié)中提及。UserObject是一種特殊的對象(控件),它以Custom Class,Stand Class,Custom Visible,External Visual,Stand Vis

30、ual五種基本類為基類,擁有該基類的基本屬性,同時在他們的基礎(chǔ)上擴展屬性,函數(shù)及事件,并直接作為一個可視化控件可以被window或?qū)嵗笫褂谩>xppt事件是描述一個窗口或窗口中控件的行為的語法,只有在滿足特定的條件時才會觸發(fā)該事件,一般一個事件反映了某種條件下的某一動作。也可以手工方式使系統(tǒng)滿足這些條件從而觸發(fā)這些事件。事件名稱事件含義及用途Open當(dāng)該窗口被用open()函數(shù)打開時觸發(fā)該事件,一般作為該窗口進行初始化處理的入口Close當(dāng)該窗口被關(guān)閉后消失前觸發(fā),可能被close()函數(shù)關(guān)閉,也可能是系統(tǒng)級關(guān)閉操作,一般用于收尾處理Resize當(dāng)該窗口的大小調(diào)整時觸發(fā),一般用于調(diào)整界面控

31、件的相對位置CloseQuery后于Close事件觸發(fā),當(dāng)該窗口準(zhǔn)備關(guān)閉前觸發(fā),可以替代close事件,并可以決定是否可以關(guān)閉Timer由窗口函數(shù)Timer()觸發(fā),到達指定秒數(shù)后觸發(fā)該事件,一般用于控制。Activate當(dāng)窗口被激活前觸發(fā),觸發(fā)后焦點自動移到該窗口的第一個制表站或上次的制表站,如果沒有任何可編輯對象,則該窗口獲得焦點。Deactivate當(dāng)該窗口變?yōu)榉羌せ顮顟B(tài)前觸發(fā)鼠標(biāo)事件Clicked,doubleclicked,mousedown,mousemove,mouseup,rbuttondown拖放事件Dragdrop,dragwithin,dragenter,dragleav

32、e鍵盤Key,systemkey其他DDE控制,Other,show,hide, ToolbarMoved,Help精選ppt 窗口函數(shù)一般用來控制窗口的行為,取得窗口信息,控制窗口的行為,觸發(fā)特定事件等等函數(shù)名稱函數(shù)含義及用途Open(),openSheet()系統(tǒng)級函數(shù),用于打開某特定窗口,變參調(diào)用Close()系統(tǒng)級函數(shù),用戶關(guān)閉某窗口,變參調(diào)用PostEvent在當(dāng)前腳本執(zhí)行完畢后觸發(fā)某事件(后續(xù)某動作),變參TriggerEvent立刻觸發(fā)某事件(嵌入某動作),變參Parentwindow()系統(tǒng)級函數(shù),取該窗口或某對象的父窗口Classname()指定窗口或?qū)ο蟮念惷Q)Typ

33、eof()返回當(dāng)前對象的類型(powerobjet)Timer(seconds)開始計時,如Timer(5,this)表示本窗口在5秒后觸發(fā)Timer事件,變參ArrangeSheets()如果是MDI框架窗口,則按指定方式排列所有文檔窗口Hide(),show()隱藏,顯示,setredraw(false)大小及位置Move(x,y),resize(w,h),workspacewidth(),workspaceheight(),workspacex(),workspacey(),setposition菜單Settoolbarpos(),settoolbar(),changemenu()鼠標(biāo)P

34、ointerx(),pointery()其他DDE控制系列函數(shù)精選ppt窗口 - 6.窗口控件操作(一)在界面設(shè)計中,往往用到非常多的控件放在同一窗口中,一般會有下列要求:1:對齊操作包括左、上、下、右,豎向、橫向?qū)R等操作。以第一個選擇的對象為基準(zhǔn)2:大小操作包括寬度,高度:3:相對位置操作水平間距,豎向間距(三個以上對象選中時才有效)4:制表站(tab order)定義當(dāng)運行時,用戶按tab在各個控件上的移動順序,一般以10進位如 10,20,301405:公用屬性及特有屬性指定字體、文本對齊方式、前景色、背景色、邊框等:右對齊水平中間對齊向下對齊向上對齊左對齊豎向中間對齊等高等寬等高等寬

35、豎向等間距橫向等間距文本色(前景色)背景色邊框精選ppt窗口 - 7.窗口控件操作(二)其他按鈕功能:保存剪切對象或文本復(fù)制對象或文本粘貼對象或文本撤銷或重做上次的任意操作打開當(dāng)前選中對象的腳本屬性面板切換到當(dāng)前選中對象腳本工具按鈕全選選中行及光標(biāo)所在行標(biāo)記為注釋選中行及光標(biāo)所在行標(biāo)記為非注釋查找和替換編譯當(dāng)前腳本粘貼各種語法或原型定義置于最前端置于最后端精選ppt每個控件都有的屬性共7個,這實際上是可視控件(Control)的最基本屬性Name: 在窗口中唯一標(biāo)記該控件的有效字符串Enabled :使某控件失效或使能,失效后用戶無法操作,但是可以手工觸發(fā)它的事件Visible:可視與否For

36、eground Color:前景色(按鈕無效)BackgroundColor:背景色Tag:與系統(tǒng)無任何關(guān)系的一個公用屬性,可以做任何事情Border:邊框類型,枚舉值,有些控件指定了也無效是無效的。位置:在父對象中的定位(如x,y,width,height,x1,y1,x2,y2等,但屬性名稱不一致)關(guān)于顏色的算法:長整型(long) ,rgb顏色系統(tǒng)顏色值 = rgb(red,blue,green) = green * 65536 + blue * 256 + red如 紅色( 255) = rgb(255,0,0) = 0 * 65536 + 0 * 256 + 255可以從下拉工具條中

37、直接選取常用顏色及系統(tǒng)顏色精選ppt窗口 - 9.窗口控件簡介 命令按鈕類型:Commandbuttom,PictureCommandButton 最常用屬性:default : True時,當(dāng)在窗口中的任意控件上按下回車鍵,就會觸發(fā)它的clicked事件,同時邊框加深;cancel : True時,當(dāng)在窗口中的任意控件上按下Escape,就會觸發(fā)它的clicked事件;text :現(xiàn)實的文本,如 “確定(&O)” 就是這樣的:PictureCommandButton中PictureName,DisabledPictureName指定有效,失效時的圖片,但因為不支持透明,故用的比較少。

38、Htextalign,VtextAlign:制定水平,垂直方向的文本對齊方式事件:clicked:最主要事件,在用戶按下并抬起鼠標(biāo)后觸發(fā)。其他事件: rbuttondown,dragdrop,dragenter,dragwithin,dragleave,getfocus,lostfocus等等極少用,一般都在clicked事件中寫腳本。函數(shù):setfocus() :取得焦點,一般在別的控件中調(diào)用,如 cb_xxx.post setfocus()classname():取得名稱,如 cb_test.classname() 就返回 “cb_test”hide(),show(),resize(),m

39、ove()等較少用到。用途:到處都用,但一個界面上按鈕不易太多,而且布置要合理,用圖片按鈕給用戶比較直接的感覺,但是顏色就固定了。精選ppt窗口 - 10.窗口控件簡介 靜態(tài)文本類型:StaticText ,經(jīng)常用,一般用做顯示信息屬性:text:顯示的文本backcolor,textcolor,bordercolor:顏色屬性(底色,前景色,邊框色)事件:clicked,doubleclicked,極少對它寫腳本函數(shù):同 commandbutton,很少用精選ppt窗口 - 11.窗口控件簡介 可編輯類主要有:SingleLineEdit,MultiLineEdit,EditMask,Ric

40、hTextEdit屬性:SingleLineEdittext:可以修改,其他和statictext一致;MultiLineEdit全部SingleLineEdit屬性和事件,可以折行EditMask和SingleLineEdit一致,可以制定輸入的格式(mask屬性),如日期型,則mask輸入 yyyy-mm-ddRichTextEdit:類word文檔處理控件,一般較少用到事件:modified:最常用事件,指明做了修改后執(zhí)行什么操作。getfocus:取得焦點后執(zhí)行的操作,一般用來選擇文本,如: this.selecttext(1,len(this.text)其他事件很少用到函數(shù):copy

41、(),paste(),selecttext(),cut(),undo()等等,都是用于文本操作的。其他文本編輯控件都有這些函數(shù),如sle_test.copy()表明將sle_test中選中的文本復(fù)制到剪貼板。用途:除了數(shù)據(jù)窗以外的所有用戶輸入的口子都在這兒,因此用途非常廣,結(jié)合數(shù)據(jù)窗,就可以完成用戶輸入部分的操作了。精選ppt類型:HScrollBar,Vscrollbar:滾動條 HTrackBar,VTrackBar:導(dǎo)軌 HProgressBar,VProgressBar:進度條屬性:minposition,maxposition,position:指定最小,最大值,當(dāng)前值 如 hpb_

42、1.position=87 /表明將進度條的位置移動到87處(不一定代表是 87%, 因為和maxposition有關(guān))事件:TrackBar,ScrollBar moved:當(dāng)移動按鈕或?qū)к墪r觸發(fā)函數(shù):TrackBar,ScrollBar setposition(),setrange(), OffsetPos():設(shè)置位置,范圍,相對移動用途:這幾個控件,一般Hprogressbar較常用,經(jīng)常使用在需要進行常時間運行的程序中,顯示當(dāng)前運行的總體進度,以免用戶以為死機而reset.(PB是單線程內(nèi)核,即使可以通過yield()函數(shù)來進行后臺處理,但一旦執(zhí)行某運算,一般是很難終止的,而且此時c

43、pu的占用會非常高,以至用戶以為機器死了)窗口 - 12.窗口控件簡介 顯示及控制類精選ppt窗口 - 13.窗口控件簡介 下拉列表框類型:DropDownListBox(ddlb),DropDownPictureListBox(ddplb)屬性:兩者基本相似,ddplb多了一個圖形顯示及圖形屬性,圖形處理函數(shù)而已,在實際使用中,基本上沒有多少區(qū)別。Item:指定下拉列表中的項目,一般不能太多,否則就毫無意義。PictureName:按順序指定圖片名稱,然后和item中的pictureindex對應(yīng)Sorted:是否按item中的文本排序ShowList : =true,則永遠顯示下拉列表。一

44、般很少用,本來就是想省地方,現(xiàn)在再占用一塊地方,還不如用PictureListBox來的好。事件:selectionchanged當(dāng)選中的對象改變時觸發(fā),一般都在這兒寫腳本??梢酝ㄟ^事件的參數(shù)index來得到當(dāng)前選中的是哪一項。函數(shù):DirList():可以直接將某目錄下的文件名全部顯示出來,配合Treeview,可以自己做一個目錄及文件樹DirSelect():取出由dirlist()生成的列表中當(dāng)前選中的文件名或目錄名;Additem(),Insertitem(),DeleteItem()增加,插入,刪除 itemSelectItem():手工指定選中的itemTotalItems():一

45、共有多少個itemReset():清除所有itemFindItem():查找符合條件的item用途:用在唯一需要確定某類型的時候,選項不要超過20個,否則很容易找不到,而且,20個圖片堆在一起,很難確定那個是你真正需要選擇的。精選ppt窗口 - 14.窗口控件簡介 列表類類型:ListBox,PictureListBox屬性、事件、函數(shù):與下拉列表類基本類似,甚至函數(shù)、事件、都差不多,不過列表類支持多選因此也就多了有關(guān)于多選的其他函數(shù),常用的有3個:state(),判斷某個item是否為選中,setstate():設(shè)置某項的選中狀態(tài)TotalSelected():一共選中了多少個用途:一般作為

46、需要用戶可以有多個選擇余地的地方,但是item不能太多,5個里面挑一個好找,50個里面的話,只有眼花 _精選ppt窗口 - 14.窗口控件簡介 視圖類類型:ListView,TreeView這是兩個僅次于datawindow的復(fù)雜程度和好用程度的兩個控件,由于有比較豐富的屬性和函數(shù)可調(diào)用,因此可以做出很多效果。屬性:ListView : LargetPicture屬性主要是用來顯示為 LargeIcon!類型而設(shè)的。其他屬性同PictureListBox但是可以指定多個列,而不是單個item。 TreeView一個item可以有3個圖片: PictureIndex,selectedPictur

47、eIndex,StatePictureIndex每個Item不是單一的文本,而是特別的TreeViewItem,有自己的子屬性如 data,label,pictureindex,selectedpictureindex,level等等事件: SelectionChanged:選中項改變 RbuttonDown:鼠標(biāo)右鍵,一般用來做彈出菜單:menu_xxx.popup(xpos,ypos)函數(shù):圖片類:addpicture(),deletepicture():主要用于動態(tài)形成視圖 ListView:add,insert,delete等等,如 TreeView:AddStatePicture()

48、,DeleteStatePicture():處理狀態(tài)圖片AddItem(),DeleteImte(),SetItem:增加,刪除,修改某節(jié)點(Item)InsertItem():指定位置插入某ItemInsertItemLast():在某節(jié)點下級最后增加下層ItemInsertItemFirst():在某節(jié)點下級最前插入下層ItemInsertItemSort():在某節(jié)點下級中按排序插入下層 ItemFindItem():相對查找,如同層、上層、下層Expanditem(),CollapseItem():展開、折疊指定節(jié)點SelectItem(),SetFirstVisible()選中某節(jié)點

49、,使某節(jié)點第一個可見應(yīng)用:非常廣泛精選ppt窗口 - 15.窗口控件簡介 其他其它控件:圖形控件,圖表控件:Line,Oval,Rectangle,RoundRectangle,他們總是處于最底層而不可能覆蓋在其他控件的上方,沒有事件,一般僅做裝飾用。運行時修改它們的屬性就可以實現(xiàn)各種效果。圖表控件:Graph用來表示系列數(shù)據(jù)。一個圖表控件可以有一個或多個數(shù)據(jù)系列。函數(shù):AddCategory,將一個Category添加到控件中。AddSeries,在一個已經(jīng)存在的Category中添加一個數(shù)據(jù)系列并返回一個值。AddData和InsertData,利用AddSeries的返回值在一個已經(jīng)存在

50、的數(shù)據(jù)系列中添加一個數(shù)據(jù)項。另外用戶還可以直接在數(shù)據(jù)窗口中利用Graph風(fēng)格來顯示圖形化的數(shù)據(jù)。精選ppt菜單 - Menu菜單:Menu應(yīng)用程序中一般都有菜單,原因很簡單。因為如果每項命令都有按鈕完成,就會因為按鈕過多而使得用戶在使用起來找不到頭緒。而下拉式菜單不但具有占用空間小的優(yōu)點,而且層次分明,每項功能都有相應(yīng)的文字提示。所以對于一個復(fù)雜的應(yīng)用程序來說,菜單絕對是必不可少的。Pow-erBuilder提供了一個菜單畫板。用戶可在菜單畫板中定義自己需要的菜單項和每個菜單項相應(yīng)的腳本創(chuàng)建:文件-新建-對象-菜單即可進入菜單畫板,或文件-繼承,選擇祖先菜單,然后也進入菜單畫板。屬性:每個菜單

51、有若干級聯(lián)的菜單項構(gòu)成,每項成為一個 menu item,每個item都具有菜單的所有屬性,包括:普通屬性:name:名稱,如果從祖先繼承,則不能修改text:菜單文字,如“文件(&F)”Microhelp:顯示在MDI Help 框架窗口的狀態(tài)欄中的文字Visible,Enable:可見,使能shortcut:快捷鍵,如 CTRL + S,有下級菜單的菜單沒有快捷鍵工具條屬性:ToolbarItemText:工具條上的文字;ToolbarItemName:工具條圖片;ToolbarItemDownName:工具條下壓圖片;ToolbarItemSpace:工具條前面的空格;Toolb

52、arItemOrder:工具條順序;ToolbarItemIndex:工具條所在的Dock順序精選ppt菜單 - 如何使用菜單的事件:selected:選中后,即鼠標(biāo)通過該菜單項;clicked:單擊后,一般在這兒寫腳本;腳本編寫:一般在腳本中打開某窗口,如:openSheet(w_mdi_sheet,parentwindow,0,original!)就是在框架窗口parentwindow(菜單的屬性,表明該菜單依附的主窗口,一般為MDI Frame)中打開w_mdi_sheet,并將打開的窗口的標(biāo)題自動顯示在定義為windows類型的菜單下,并保持原始w_mdi_sheet的位置。詳細參數(shù)請

53、查看opensheet函數(shù)。一般菜單用在2個地方:MDI Frame :框架窗口中,作為主程序的主要界面的一種執(zhí)行方式,一般一個MDI Frame都必須指定一個菜單;Popup:彈出式菜單,用在特定的窗口或?qū)ο笾?,由menu_xxx.popup(x,y)來調(diào)用如何引用菜單:2種方式,顯示和隱式引用:如有框架中定義菜單:m_frame,其中有 m_file (文件&F)m_file_open (打開&O)m_file_empbar(-)m_file_exit(關(guān)閉(&x)則在主窗口中對該菜單中m_file_exit菜單項的引用可以是:m_frame.item1.item3

54、精選ppt框架 - 框架應(yīng)用程序在如今的Window應(yīng)用軟件中,多文檔(MDI)應(yīng)用程序占了很大的比重。這是因為相對于單文檔界面,多文檔界面可以同時打開多個窗口,無需關(guān)閉窗口就可以打開另外一個,可以自由的在各文檔之間切換。因此,為了使我們的軟件更具實用性,能夠更好的方便用戶,創(chuàng)建一個MDI的應(yīng)用程序就顯得尤為必要。MDI應(yīng)用程序由兩部分組成,即MDI框架和框架內(nèi)的工作表(Sheet)。MDI框架就是執(zhí)行程序時首先打開的主窗口。在框架中打開的其它窗口被稱為工作表。在同一屏幕中,主窗口即MDI框架只能有一個,而工作表可以有很多個,且只能在框架范圍內(nèi)活動。也就是說,當(dāng)工作表被最小化時,它不會縮小在W

55、in95的工具欄上,而會出現(xiàn)在框架底部的一個橫欄上。當(dāng)工作表被最大化時,它也只能被放大到充滿整個框架,而不是整個屏幕。創(chuàng)建框架的方法很簡單,只需首先在窗口屬性中指定一個菜單,然后將窗口的類型改為MDI Frame或MDI FrameWith Micorhelp即可。MDI框架中的工作表實際上就是一個普通的窗口,但是不能是MDI Frame、MDI FrameWith Micro-Help或Response等類型的窗口。要想在一個MDI框架中建立一個工作表,只需調(diào)用函數(shù)OpenSheet即可。工作表在MDI框架中有三種排列方式,即Cascaded!、Layered!和Original!三種方式。

56、用戶可以在建立工作表時為工作表指定一種排列方式,也可以通過函數(shù)ArrangeSheets來重新排列工作關(guān)于工作表的函數(shù)還有GetActiveSheet,被用來返回當(dāng)前MDI框架中被激活的工作表,它的返回值是一個窗口類型。當(dāng)沒有工作表被激活時,返回值為Null,用戶可以通過IsVa-lid函數(shù)來判斷其返回值是否有效。GetFirstSheet,用來返回MDI框架中頂層的工作表;GetNextSheet用來返回指定工作表的下一個表。ParentWindow ( )函數(shù),返回當(dāng)前工作表的父窗口,也就是其所在的MDI框架。OpenSheetWithParm帶參數(shù)的打開工作表。在MDI框架中的工作表如果

57、帶有菜單,那么當(dāng)該工作表被打開后它的菜單將覆蓋原來框架的菜單。當(dāng)多個工作表具有不同的菜單時,在菜單欄上顯示的將是當(dāng)前被激活工作表的菜單。只有當(dāng)關(guān)閉了所有的工作表,或者工作表根本沒有菜單的時候,在菜單欄上顯示的才是MDI框架的菜單。對于菜單項的每一項,無論它是MDI框架還是工作表的菜單,都可以為該選項設(shè)置狀態(tài)欄上的提示信息,只需在菜單項的屬性Micro-Help中設(shè)置即可。一般,工作表的菜單都是從框架菜單繼承或相同的,以免打開一個工作表后無法打開其他工作表。精選ppt窗口 小結(jié)1 窗口是程序的核心界面,應(yīng)用通過各個窗口,利用窗口中的各種控件和用戶交互,完成數(shù)據(jù)的處理工作;2 一般應(yīng)用都以MDI

58、Frame作為框架程序,3 Sheet菜單從Frame菜單繼承或沒有菜單,保證框架界面的統(tǒng)一和完整;4 界面設(shè)計應(yīng)遵循一定的原則,不是想怎么做就怎么做,必須考慮協(xié)同開發(fā)問題,用以保證整體性和一致性。5 腳本的編寫、函數(shù)、事件的命名都必須考慮規(guī)范性的問題,從一開始養(yǎng)成良好的命名規(guī)范及編寫習(xí)慣,對己對人都極有好處。精選pptDatawindow - IntroDatawindow精選ppt 數(shù)據(jù)窗口是用于查詢、顯示和維護來自關(guān)系數(shù)據(jù)庫或其他數(shù)據(jù)源(如Excel文件或其他文件)數(shù)據(jù)的對象。在數(shù)據(jù)窗口中可以定義數(shù)據(jù)的顯示格式、顯示風(fēng)格和其他數(shù)據(jù)屬性,使數(shù)據(jù)對用戶更加直觀和更有意義。數(shù)據(jù)窗口最初使用在P

59、B的C/S結(jié)構(gòu)中,為這種模式提供了強有力的數(shù)據(jù)查詢和數(shù)據(jù)維護功能。隨著PB及其相關(guān)技術(shù)和產(chǎn)品的發(fā)展,PB已經(jīng)不是單一的C/S應(yīng)用開發(fā)工具,已經(jīng)可以適應(yīng)Web開發(fā)等各種需要,主要應(yīng)用包括精選pptnPowerBuilder數(shù)據(jù)窗口,作為在應(yīng)用程序中的一個控件;nHTML數(shù)據(jù)窗口,用于web應(yīng)用的瘦客戶端數(shù)據(jù)窗口,提供了大部分的PB數(shù)據(jù)窗的數(shù)據(jù)維護和編程等功能;n數(shù)據(jù)窗口的ActiveX Web控件,在Powersite內(nèi)部建立Web頁面時使用的ActiveX控件;nJava版本的數(shù)據(jù)窗口:在PowerJ中建立Java應(yīng)用使用的JavaBeans組件;nDesign-time控件,Powersit

60、e使用;n數(shù)據(jù)窗口插件:在瀏覽器中顯示PowerSoft PSR報表。精選ppt顯示風(fēng)格(Style)用于定義數(shù)據(jù)窗口的顯示風(fēng)格和外部特征。Tabular(列表):記錄橫置于頁面,標(biāo)題在所有列的頂端,可以多行數(shù)據(jù);Freeform(自由格式):每列左側(cè)有一個標(biāo)簽,一屏只顯示一條記錄;Grid(網(wǎng)格):如Excel的sheet格式;Label(標(biāo)簽):每頁有幾個標(biāo)簽,每個標(biāo)簽一行;N-UP(分欄):并列顯示;Group(分組):在表頭下按列分組的格式;Composite(組合):嵌套格式Graph(圖表):數(shù)據(jù)的圖形顯示;Crosstab(交叉):行列格式的數(shù)據(jù)表示,列可動態(tài)計算;RichText:多信息文本,文本段落中可以嵌入列

溫馨提示

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

評論

0/150

提交評論