首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級(jí) | 職稱英語 | 商務(wù)英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級(jí) | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學(xué)習(xí) | 法語 | 德語 | 韓語
計(jì)算機(jī)等級(jí)考試 | 軟件水平考試 | 職稱計(jì)算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報(bào)關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
報(bào)檢員 | 教師資格 | 社會(huì)工作者 | 外銷員 | 國際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價(jià)格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格考試會(huì)計(jì)證) | 經(jīng)濟(jì)師 | 會(huì)計(jì)職稱 | 注冊會(huì)計(jì)師 | 審計(jì)師 | 注冊稅務(wù)師
注冊資產(chǎn)評(píng)估師 | 高級(jí)會(huì)計(jì)師 | ACCA | 統(tǒng)計(jì)師 | 精算師 | 理財(cái)規(guī)劃師 | 國際內(nèi)審師
一級(jí)建造師 | 二級(jí)建造師 | 造價(jià)工程師 | 造價(jià)員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評(píng)價(jià)師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價(jià)師 | 安全評(píng)價(jià)師 | 電氣工程師 | 注冊測繪師 | 注冊計(jì)量師
繽紛校園 | 實(shí)用文檔 | 英語學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

2011計(jì)算機(jī)等考Delphi:數(shù)據(jù)庫創(chuàng)建及MASTAPP介紹

本章主要介紹用Delphi開發(fā)簡單的數(shù)據(jù)庫應(yīng)用程序的一般方法和步驟,首先讓讀者對(duì)Delphi強(qiáng)勁的數(shù)據(jù)庫應(yīng)用開發(fā)工具有一個(gè)直觀的印象,然后在此基礎(chǔ)上進(jìn)行復(fù)雜的數(shù)據(jù)庫應(yīng)用程序的設(shè)計(jì)。

  14.2 利用TDBNavigator部件創(chuàng)建存取程序

  我們可以改進(jìn)一下Cust程序以便它一次只在對(duì)話框中顯示一個(gè)客戶的記錄信息,并用一個(gè)TDBNavigator部件控制對(duì)記錄存取──允許我們選擇一個(gè)記錄來顯示或編輯以及增加和刪除記錄。完成的應(yīng)用窗體。

  增強(qiáng)的Cust程序

  14.2.1 創(chuàng)建應(yīng)用程序窗體

  我們可以非常迅速地創(chuàng)建起來,因?yàn)榈侥壳盀橹刮覀儗?duì)創(chuàng)建窗體的方法已經(jīng)比較熟悉,我們首先把所有的部件都放到窗體中,然后再設(shè)置它們的屬性。

  開始一個(gè)新工程,設(shè)置窗體Form1的Name 屬性為 Customerform2 , Caption 屬性為 CustomerForm2。然后從部件選擇板上的Data Access頁上選取一個(gè)Datasource部件和一個(gè)Table部件放在窗體的右上角。再從Data Controls頁上選取DBNatvigator部件放在窗體的左上角。

  窗體中其余的部件如圖14.3所示。它們是TDBEdit和TLabel部件,按圖14.3 所示創(chuàng)建并布置部件,分別命名DBEdit部件為EditCustno、 Editcompany 、 EditAddr1 、EditAddr2、EditCity、EditState、EditZip、EditCountry、EditPhone 、EditFAX、EditTaxRate、EditContact。

  現(xiàn)在我們來連接TTable部件和 TDataSource 部件, 然后連接所有的數(shù)據(jù)瀏覽部件和DataSource部件。設(shè)置TBNavigator部件和TDBEdit部件的屬性,它們的DataSource屬性都設(shè)置為DataSouce1。我們最后要做的事是連接窗體中各個(gè)TDBEdit 部件和它們在數(shù)據(jù)庫表中對(duì)應(yīng)的字段名,通過設(shè)置TDBEdit 部件的 DataField 屬性來完成。 例如要連接命名為EditCustNo的TDBEdit部件和數(shù)據(jù)庫表中的CustNo字段,具體步驟如下:

 、龠x中窗體中的EditCustNo部件。

  ②在Object Inspector窗體中,單擊DataField屬性右邊的箭頭。

 、蹚南吕斜碇羞x中CustNo字段名。

  對(duì)窗體中的其他TDBEdit部件執(zhí)行以上操作連接到其對(duì)應(yīng)的字段,然后保存文件。命名代碼單元名為Cust2.pas,命名工程名為Cusprj2.DPR。

  14.2.2 使用TDBNavigator部件移動(dòng)記錄指針

  上述程序運(yùn)行之后,在數(shù)據(jù)瀏覽部件中會(huì)顯示數(shù)據(jù)庫表中的第一條記錄。利用Tab 鍵可以在字段之間移動(dòng),但是不能編輯字段。因?yàn)槲覀優(yōu)榱朔乐挂馔庑薷,設(shè)置了Table1的AutoEdit屬性值為False。如果想對(duì)數(shù)據(jù)庫表中的記錄進(jìn)行編輯、插入和刪除操作或者想顯示數(shù)據(jù)庫表中另一條記錄, 需要按 TDBNvigator 部件上這些功能所對(duì)應(yīng)的功能按鈕。TDBNavigator部件上的按鈕和它們的功能如圖14.4所示。

  TDBNavigator中的按鈕

  TDBNavigator部件的絕大多數(shù)功能都可以根據(jù)其按鈕的圖標(biāo)能夠很容易地識(shí)別出來,而且TDBNavigator部件本身能感知到很多事情,如當(dāng)前指針是否在數(shù)據(jù)庫表的開頭或尾部。如果用戶正在查看數(shù)據(jù)庫表中的最后一個(gè)記錄,Next和Last按鈕將會(huì)變灰成為非活動(dòng)狀態(tài)。同樣,如果用戶當(dāng)前正在瀏覽數(shù)據(jù)庫表中的第一條記錄, TDBNavigator 上的 First 和Previous按鈕會(huì)變灰而成為非活動(dòng)狀態(tài)。有關(guān)各個(gè)按鈕的作用的更詳細(xì)說明請(qǐng)查看聯(lián)機(jī)幫助。

  如果用戶想修改當(dāng)前的記錄,單擊TDBNavigator部件的Edit按鈕,然后完成需要做的修改,在做完修改之后,單擊Post按鈕以便將作的修改寫入實(shí)際的數(shù)據(jù)庫表中(更新實(shí)際的數(shù)據(jù)庫表中的記錄在數(shù)據(jù)庫術(shù)語中叫作“投寄”記錄即PostT)。如果想取消所做的修改,單擊Cancel按鈕。Cancel按鈕只取消自從上一次往數(shù)據(jù)庫表中投寄記錄以來對(duì)記錄所做的修改。例如,如果用戶曾修改了CustNo字段并單擊了Post按鈕投寄了修改,然后再修改Company字段并按Cancel,那么只有對(duì)Company所做的修改將會(huì)被取消。也就是說,一旦修改被寫入了數(shù)據(jù)庫表中,再按Cancle按鈕是無法取消對(duì)記錄的修改的,要想恢復(fù)到以前的狀態(tài),用戶必須要重新編輯修改記錄。值得注意的是,當(dāng)用戶修改了當(dāng)前的記錄,并移動(dòng)到其他記錄時(shí),TDBNavigaator部件會(huì)自動(dòng)地投寄用戶對(duì)記錄的修改。例如:如果我們修改了記錄的Company字段,并沒有按Post按鈕以更新表中的記錄,而是移動(dòng)到下一條記錄,這時(shí)用戶對(duì)記錄的修改也會(huì)自動(dòng)地被寫入數(shù)據(jù)庫表中。

  14.2.3 定制TDBNavigator部件

  TDBNavigator部件中的按鈕對(duì)我們開發(fā)人員來說是很方便的,但對(duì)于程序的最終用戶來說不一定那么一目了然。為了幫助最終用戶或初級(jí)用戶更方便有效地使用TDBNavigator部件,我們可以設(shè)置TDBNavigator部件的ShowHint屬性為True,這樣當(dāng)鼠標(biāo)光標(biāo)停留在TDBNavigator部件上的某一個(gè)按鈕上超過大約1秒鐘,在屏幕上便會(huì)出現(xiàn)該按鈕的提示信息。如果我們不想使用TDBNavigator部件本身嵌入的提示信息,我們還可以設(shè)置TDBNavigtor部件的Hints屬性,為每個(gè)按鈕指定特定的提示信息,以幫助用戶使用TDBNavigator部件。

  TDBNavigator部件中有多個(gè)功能按鈕,但并不是所有的按鈕對(duì)每一個(gè)數(shù)據(jù)庫應(yīng)用程序都是需要的,特別是那些不允許修改表中的數(shù)據(jù),或修改只是在很嚴(yán)格的控制下進(jìn)行的數(shù)據(jù)庫應(yīng)用程序。我們可以通過設(shè)置TDBNavigator部件的 VisibleButtons 屬性來確定要在TDBNavigator中顯示哪些按鈕步顯示哪些按鈕。例如,如果我們不允許用戶修改表中的記錄,我們就不需要Add、Delete、Post、Cancel 或 Refresh 按鈕, 我們設(shè)置這些按鈕的VisibleButtons屬性為False,這樣在TDBNavigator部件中將不會(huì)出現(xiàn)這些按鈕。

  TDBNavigator部件的ConfirmDelete屬性和Delete 按鈕配合使用對(duì)用戶刪除數(shù)據(jù)庫表中的記錄是非常有用的,當(dāng)ConfirmDelete屬性設(shè)置為 True (缺省設(shè)置), 當(dāng)用戶單擊Delete按鈕試圖刪除當(dāng)前記錄時(shí),Delphi會(huì)彈出一個(gè)確認(rèn)框,要用戶確認(rèn)是否真的想刪除當(dāng)前記錄。這樣,在用戶進(jìn)行刪除記錄的操作時(shí),會(huì)更安全一些。如果用戶不希望在按下Delete按鈕時(shí)出現(xiàn)確認(rèn)框,只要把ConfirmDelete設(shè)置為False就可以了。

  還有一些屬性可以用來定制TDBNavigator部件的外觀和性能,有關(guān)這方面的詳細(xì)信息請(qǐng)參看聯(lián)機(jī)幫助。

上一頁  1 2 3 4 5 6 7 8 9 10  ... 下一頁  >> 
  相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試試題及答案解析專題
       預(yù)告:名師解析2010年9月計(jì)算機(jī)等級(jí)考試試題答案
       2010年9月計(jì)算機(jī)等級(jí)考試成績查詢時(shí)間及入口
       2010年9月計(jì)算機(jī)等考成績查詢短信免費(fèi)提醒開通
文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。