基于數(shù)據(jù)窗口技術(shù)用戶可管理界面軟件實現(xiàn)

基于數(shù)據(jù)窗口技術(shù)用戶可管理界面軟件實現(xiàn)

ID:31778648

大小:54.58 KB

頁數(shù):5頁

時間:2019-01-18

基于數(shù)據(jù)窗口技術(shù)用戶可管理界面軟件實現(xiàn)_第1頁
基于數(shù)據(jù)窗口技術(shù)用戶可管理界面軟件實現(xiàn)_第2頁
基于數(shù)據(jù)窗口技術(shù)用戶可管理界面軟件實現(xiàn)_第3頁
基于數(shù)據(jù)窗口技術(shù)用戶可管理界面軟件實現(xiàn)_第4頁
基于數(shù)據(jù)窗口技術(shù)用戶可管理界面軟件實現(xiàn)_第5頁
資源描述:

《基于數(shù)據(jù)窗口技術(shù)用戶可管理界面軟件實現(xiàn)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、基于數(shù)據(jù)窗口技術(shù)用戶可管理界面軟件實現(xiàn)摘要:利用Powerbuilder數(shù)據(jù)窗口技術(shù)實現(xiàn)最終用戶對應(yīng)用軟件界面的管理,并將用戶對界面的修改結(jié)果持久存儲到數(shù)據(jù)庫,軟件開發(fā)者無需對軟件重新編譯和連接,提高了軟件的適應(yīng)性,降低了軟件維護成本。關(guān)鍵詞:數(shù)據(jù)窗口;用戶可管理界面軟件;用戶界面;Powerbuilder中圖分類號:TP311文獻標(biāo)識碼:A文章編號:1009-3044(2014)08-1654-03用戶可管理界面軟件也稱為用戶可配置界面軟件,是指允許軟件使用者,也就是軟件的最終用戶通過軟件自帶的功能對用戶界面進行管理,如修改界面的外觀,增加或減少界面元素等,并且將這些變化持久存儲,而無需軟

2、件開發(fā)商對已發(fā)布的軟件進行重新編譯和發(fā)布,因此用戶可管理界面軟件可以提高軟件的適用性,降低軟件的維護成本。用戶可管理界面軟件既是一種技術(shù),也是一種編程思想和方法,可以在任何開發(fā)工具中加以貫徹。該文給出的是基于Powerbuilder數(shù)據(jù)窗口技術(shù)的一種實現(xiàn)。1總體設(shè)計思路Powerbuilder應(yīng)用程序中,界面元素包括窗口、菜單、窗口中的各種控件等,數(shù)據(jù)窗口(DataWindow)控件是窗口控件的一種,數(shù)據(jù)窗口控件通過與數(shù)據(jù)窗口對象相結(jié)合,用多種風(fēng)格向用戶展示數(shù)據(jù)并將用戶對數(shù)據(jù)操作的結(jié)果保存到數(shù)據(jù)庫中,因此數(shù)據(jù)窗口構(gòu)成了應(yīng)用程序界面的最主要的元素。該文主要介紹數(shù)據(jù)窗口界面用戶可管理的實現(xiàn),窗口

3、及窗口中其它控件的實現(xiàn)思想與此類似。對用戶界面的管理包括獲取用戶界面的各種界面元素、對界面元素的屬性進行重新設(shè)置、持久存儲修改結(jié)果、界面再次被載入時通過最后一次的修改結(jié)果重構(gòu)數(shù)據(jù)窗口等主要內(nèi)容??傮w結(jié)構(gòu)圖如圖1所示。2系統(tǒng)實現(xiàn)首先構(gòu)造一個數(shù)據(jù)窗口類型的用戶可視對象,所有的編程都是面向該用戶對象的,應(yīng)用程序中的數(shù)據(jù)窗口控件都繼承自該對象,因此不會增加程序員的工作量。2.1數(shù)據(jù)窗口語法的讀取及數(shù)據(jù)窗口的重構(gòu)數(shù)據(jù)窗口的重構(gòu)是指使用已經(jīng)存儲的數(shù)據(jù)窗口語法重新構(gòu)建數(shù)據(jù)窗口,代碼可以放入數(shù)據(jù)窗口控件的constractor事件中。首先檢查數(shù)據(jù)庫中是否保存有該數(shù)據(jù)窗口的語法,若存在,則取得該數(shù)據(jù)窗口的語法

4、,通過該語法重建該數(shù)據(jù)窗口;若用戶未對該數(shù)據(jù)窗口進行過管理配置,則不存在該數(shù)據(jù)窗口語法的存儲信息,這時直接使用原始數(shù)據(jù)窗口。數(shù)據(jù)窗口構(gòu)建(constractor)事件代碼如下:stringls_datawindowname,ls_datawindow_script,ls_errorbloblb_scriptls_datawindow_name二this.dataobjectlongll_count//檢查數(shù)據(jù)庫中是否已保存了該數(shù)據(jù)窗口的語法selectcount(*)into:ll_countfromdw_describe_scriptwheredatawindow_name=:ls_dat

5、awindow_nanie;ifll_count>0then//已存在該數(shù)據(jù)窗口的語法,則取得原有語法selectblobdatawindow_scripinto:lbscriptfromdw_describe_scriptwheredatawindow_name=:ls_datawindow_nanie;ls_datawindow_script=string(lb_script)//通過所取得的數(shù)據(jù)窗口語法重建數(shù)據(jù)窗口this.create(ls_datawindow_script,ls_error)iflen(ls_error)>0thenMessageBox(錯誤信息”,“創(chuàng)建數(shù)據(jù)窗口

6、錯誤:?r”+ls_error)endifendif其中dw_describe_script表包括數(shù)據(jù)窗口對象名(datawindow_name)及數(shù)據(jù)窗口語法(datawindow_scrip)等列。2.2數(shù)據(jù)窗口語法的獲取及保存當(dāng)用戶對數(shù)據(jù)窗口進行了修改后,可在數(shù)據(jù)窗口控件的destructor事件中獲取修改后的數(shù)據(jù)窗口語法,并保存到數(shù)據(jù)庫中。保存數(shù)據(jù)窗口語法的代碼如下:string1s_datawindow_name,ls_datawindow_scriptbloblb_scriptlongll_rowsls_datawindow_name=this.dataobject//取得數(shù)據(jù)窗

7、口對象名字//取得數(shù)據(jù)窗口語法ls_datawindow_script二this.Describe(”datawindow.syntax”)lb_script二blob(ls_datawindow_script)〃檢查數(shù)據(jù)庫中是否已保存有該數(shù)據(jù)窗口語法selectcount(*)into:ll_rowsfromdw_describe_scriptwheredatawindow_name=:ls_datawin

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。