freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

本科--圖書(shū)管理信息系統(tǒng)(編輯修改稿)

2025-01-12 09:10 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 Items 制作一些菜單項(xiàng) 菜單制作最后效果圖為: 在主窗體中通過(guò)單擊菜單項(xiàng)按鈕來(lái)選擇所需的窗體,每個(gè)菜單 項(xiàng)的功能就是顯示對(duì)應(yīng)的窗體。它們的單擊事件的程序代碼如下: 昆明冶金高等??茖W(xué)校計(jì)信系 畢業(yè)論文 第 14 頁(yè) procedure (Sender: TObject)。 begin 。 //顯示圖書(shū)管理窗體 end。 procedure (Sender: TObject)。 begin 。 //顯示讀者管理窗體 end。 procedure (Sender: TObject)。 begin 。 //顯示借閱管理窗體 end。 procedure (Sender: TObject)。 begin close。 //關(guān)閉主窗體 end。 procedure (Sender: TObject)。 begin 。 //顯示信息查詢窗體 end。 5. 3 登錄窗體 其界面如圖所示: 用戶登錄窗體運(yùn)行時(shí)是讓用戶輸 入密碼,以確定用戶是否合法,能否進(jìn)入系統(tǒng)。用戶登錄是最多可輸入三次密碼,如果密碼仍不正確系統(tǒng)將關(guān)閉,所以我們可以定義一個(gè)變量來(lái)記錄密碼輸入次數(shù),在 LoginForm 窗體的變量定義部分定義:entertime:integer。并在 LoginForm 窗體的 Oncreate 事件的處理過(guò)程中初始化該變量。程序代碼如下: procedure (Sender: TObject)。 昆明冶金高等專科學(xué)校計(jì)信系 畢業(yè)論文 第 15 頁(yè) begin entertime:=0。 end。 ? 確定按鈕功能的實(shí)現(xiàn) 確定按鈕的功能是用來(lái)檢測(cè)用戶 輸入的密碼是否正確。其單擊事件OnClick 的處理代碼如下: procedure (Sender: TObject)。 var pwfile:textfile。 possword:string。 begin Assignfile(pwfile,39。39。)。 //從文件 中讀取密碼 reset(pwfile)。 readln(pwfile,possword)。 closefile(pwfile)。 inc(entertime)。 //密碼輸入次數(shù)增加 1 if =possword then close else begin :=39。密碼輸入錯(cuò)誤,請(qǐng)重新輸入 :39。 if entertime=3 then //超過(guò)輸入次數(shù) begin messagebox(handle,39。輸入密碼錯(cuò)誤超過(guò)三次,程序退出 !39。,39。信息 39。,MB_OK)。 close。 。 //應(yīng)用程序結(jié)束 end else begin :=39。39。 。 end。 end。 end。 其中 文件用記事本來(lái)創(chuàng)建,保存時(shí)必須以 .sys 作為擴(kuò)展名。 登錄窗體它將在主窗體初次激活之前被顯示,這樣才能起到合法性檢查的作用。所以在主窗體( MainForm)變量定義部分定義變量 HaveLogin,它的作用是判斷是否已經(jīng)登錄。在主窗體的 OnCreate 事件的處理過(guò)程中初始化變量 HaveLogin,OnActivate 事件的處理過(guò)程中顯示用戶登錄窗體,代碼實(shí)現(xiàn)為: procedure (Sender: TObject)。 begin havelogin:=false。 //初始化,說(shuō)明還沒(méi)有登錄 end。 昆明冶金高等專科學(xué)校計(jì)信系 畢業(yè)論文 第 16 頁(yè) procedure (Sender: TObject)。 begin if not havelogin then //還沒(méi)有登錄 begin 。 havelogin:=true。 end。 end。 ? 修改按鈕的實(shí)現(xiàn): 建立一個(gè)窗體 (PsForm)用來(lái)實(shí)現(xiàn)修改密碼,從而維護(hù)系統(tǒng)。它要求原密碼輸入正確并且新密碼與確認(rèn)密碼 相同。其界面如圖所示: 其中“確認(rèn)”按鈕單擊事件的代碼為: procedure (Sender: TObject)。 var pwfile:textfile。 possword:string。 begin assignfile(pwfile,39。39。)。 reset(pwfile)。 readln(pwfile,possword)。 closefile(pwfile)。 if possword then showmessage(39。原密碼不對(duì),不能修改密碼 !39。) else if = then begin assignfile(pwfile,39。39。)。 rewrite(pwfile)。 writeln(pwfile,)。 昆明冶金高等??茖W(xué)校計(jì)信系 畢業(yè)論文 第 17 頁(yè) closefile(pwfile)。 showmessage(39。密碼修改成功 !39。)。 end else begin showmessage(39。新密碼和確認(rèn)密碼不一致 !39。)。 。 end。 end。 5. 4 數(shù)據(jù)模塊設(shè)計(jì) ? ADO (ActiveX Data Objects)是微軟提供的一項(xiàng)技術(shù),它是訪問(wèn)數(shù)據(jù)庫(kù)的一種接口方式,可以發(fā)表訪問(wèn)各種類型的數(shù)據(jù)庫(kù),特別是 OLEDB 數(shù)據(jù)庫(kù)。ADO 已成為訪問(wèn)數(shù)據(jù)庫(kù)的新的標(biāo)準(zhǔn)接口。從版本 6 開(kāi)始, Delphi 增添了對(duì) ADO 的支持,以便讓用戶能迅速實(shí)現(xiàn)對(duì)終端用戶用來(lái)做商 業(yè)決策的數(shù)據(jù)的一致性訪問(wèn),結(jié)合 Delphi 本身的開(kāi)放式數(shù)據(jù)組件結(jié)構(gòu),程序員可以很快地建立應(yīng)用程序,用來(lái)把自己的商業(yè)數(shù)據(jù)通過(guò) Inter 發(fā)送給客戶、最終用戶以及整個(gè)銷售環(huán)節(jié)。通過(guò) ADO, Delphi7 也能讓用戶快速訪問(wèn)關(guān)系或非關(guān)系數(shù)據(jù)庫(kù)以及 E— Mail 和商務(wù)文件系統(tǒng)。 ? ADO 同時(shí)支持訪問(wèn)本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù),訪問(wèn)本地?cái)?shù)據(jù)庫(kù)時(shí) ADO的一般處理方法如下: (1) 連接到數(shù)據(jù)源,開(kāi)始一個(gè)事務(wù)。 (2) 執(zhí)行 SQL 命令。 (3) 如果命令返回?cái)?shù)據(jù)集,則將數(shù)據(jù)存儲(chǔ)在緩存中 (4) 對(duì)數(shù)據(jù)進(jìn)行操作 (5) 用緩存中的數(shù)據(jù)更新數(shù)據(jù)集 (6) 接受或者拒絕對(duì)數(shù)據(jù) 庫(kù)的修改,結(jié)束事務(wù) 訪問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù)時(shí) ADO 的一般處理方法如下: (1) 指定服務(wù)器上被調(diào)用的程序和調(diào)用途徑 (2) 調(diào)用服務(wù)程序,通過(guò)服務(wù)程序從數(shù)據(jù)源中獲得數(shù)據(jù)集,并將數(shù)據(jù)集返回到客戶應(yīng)用程序 (3) 在客戶端將服務(wù)程序返回的數(shù)據(jù)集顯示給用戶 ? BDE(Borland Database Engine)是 Delphi 頗具特色的數(shù)據(jù)庫(kù)連接管理技術(shù)。憑借窗體和報(bào)表, BDE 可以訪問(wèn)諸如 Paradox、 Dbase 、本地 InterBase服務(wù)器的數(shù)據(jù)庫(kù),也可以訪問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù)服務(wù)器上的數(shù)據(jù)庫(kù),如Oracle,SyBase,Informix 等 客戶 /服務(wù)器數(shù)據(jù)庫(kù)中的數(shù)據(jù)庫(kù),也可以訪問(wèn)經(jīng)ODBC 可訪問(wèn)的數(shù)據(jù)庫(kù)管理系統(tǒng)中的數(shù)據(jù)庫(kù)。 ? BDE 與 ADO 數(shù)據(jù)連接技術(shù)的比較: BDE 現(xiàn)在已經(jīng)停止發(fā)展了,其性能被超越是遲早的事,因此,在開(kāi)發(fā)長(zhǎng)期應(yīng)用產(chǎn)品時(shí),我們應(yīng)該采用 ADO技術(shù)。這樣做另外一個(gè)好處是,在進(jìn)行產(chǎn)品分發(fā)時(shí),可以避開(kāi)大量 BDE的鏈接庫(kù) DLL 的分發(fā),而且讓程序自動(dòng)安裝 BDE 不是件容易的事情。 5. 4. 2 ADO 常用的組件 ? ADOConnection 組件:它起到一個(gè)橋梁作用,其他 5 個(gè)組件都可以通過(guò)它來(lái)操作數(shù)據(jù)庫(kù),它相對(duì)于其他 5 個(gè)組件來(lái)說(shuō)就相當(dāng)于數(shù)據(jù)庫(kù)別名 。它有兩個(gè)重要屬性: ConnectionString 和 LoginPrompt.。 ConnectionString 屬性可以指定一個(gè)到數(shù)據(jù)庫(kù)的連接。其使用方法參考有關(guān)書(shū)籍。 LoginPromt 屬性昆明冶金高等專科學(xué)校計(jì)信系 畢業(yè)論文 第 18 頁(yè) 決定是否彈出密碼輸入框。 ? ADODataSet 組件:通過(guò)它可以直接與一個(gè)表進(jìn)行連接,也可以執(zhí)行 SQL語(yǔ) 句 ,還 可以 執(zhí)行 存儲(chǔ) 過(guò)程 。 可以 說(shuō)集 ADOTable ADOQuery ADOStoredProc 三者的功能于一身。只要用于返回并操縱數(shù)據(jù)。 ? ADOComand 組件:主要用于執(zhí)行 SQL 語(yǔ)句 ,例如 Insert,Delete\Drop 等,如果要使用 SELECT 語(yǔ)句建議使用 TADOQuery 組件。 ? ADOTable 組件:與 BDE 中的 Table 組件非常類似,許多屬性、事件和方法也一用。它的作用是從一個(gè)數(shù)據(jù)表中獲得并操縱數(shù)據(jù), ADOTable 和Ttable 組件的使用方法大致相同。 ? ADOQuery 組件:用來(lái)對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行查詢。在后面將介紹。 在這里我們建立數(shù)據(jù)模塊 (Data Module)來(lái)存放 ADO 組件對(duì)象,這樣既便于窗體統(tǒng)一使用 ADO 組件對(duì)象訪問(wèn)數(shù)據(jù)庫(kù),也使維護(hù)修改更加簡(jiǎn)單。在Delphi7 新建一個(gè)數(shù)據(jù)模塊 DataModuleADO, 并在數(shù)據(jù)模塊中放置ADOConection 組件對(duì)象、 ADOQuery 組件對(duì)象和 ADOTable 各一個(gè),然后設(shè)置它們的屬性,如圖所示: 在數(shù)據(jù)模塊 DataModuleADO 創(chuàng)建時(shí)完成對(duì)三個(gè) ADO 組件對(duì)象的初始化,這在 DataModuleADO 的 OnCreate 事件的處理程序中實(shí)現(xiàn),代碼如下: procedure (Sender:Tobject)。 begin :=’Provider=。DataSource=’+Mypath+’Data\。Jet OLEDB: Database Password=’+MyPassw+’。Persist Security Info=False’。 :=ADOConnection1。 :=ADOConnection1。 圖書(shū)管理窗體設(shè)計(jì) 圖書(shū) 管理窗體包括新書(shū)入庫(kù)和圖書(shū)管理兩個(gè)功能。在工程中選中 BookForm窗體,然后添加一個(gè) TpageControl 組件對(duì)象,在改對(duì)象上建立兩個(gè)界面 (Tabsheet),用到的組件和屬性設(shè)置參考界面。 5. 5. 1 新書(shū)入庫(kù) 昆明冶金高等??茖W(xué)校計(jì)信系 畢業(yè)論文 第 19 頁(yè) 新書(shū)入庫(kù)的界面如圖所示,其中用到的組件對(duì)象可以從圖中看出:主要是Lable,Edit 組件。 在新書(shū)入庫(kù)頁(yè)顯示時(shí),需要清空幾個(gè)編輯框并將輸入焦點(diǎn)放在輸入書(shū)號(hào)的編輯框CodeEdit 上,這在 TabSheet1(新書(shū)入庫(kù)頁(yè) )的 OnShow 事件的處理程序中實(shí)現(xiàn),代 碼如下: procedure (Sender: TObject)。 begin 。 。 :=39。39。 :=39。39。 :=39。39。 :=39。39。 :=39。39。 。 end。 單擊“入庫(kù)”按鈕將在幾個(gè)編輯框中填入的新書(shū)的數(shù)據(jù)加入到數(shù) 據(jù)庫(kù)中,其只要內(nèi)容有: (1) 檢查新書(shū)書(shū)號(hào)是否正確,如果不正確則退出入庫(kù)操作; (2) 檢測(cè)此書(shū)號(hào)是否已經(jīng)存在,如存在則退出入庫(kù)操作; (3) 將新書(shū)的數(shù)據(jù)假如到數(shù)據(jù)庫(kù)中。 在這里我們用到 SQL 語(yǔ)言來(lái)向數(shù)據(jù)庫(kù)中插入數(shù)據(jù),其語(yǔ)法為: insert into 表名 [字段名,字段名 ] values (值表 ) Query 組件的賦值語(yǔ)句為 : ParamByname(‘FieldName’).Value:=s1。 而 ADOQuery 組件的賦值語(yǔ)句為 : (‘FieldName’).Value:=s1。 昆明冶金高等專科學(xué)校計(jì)信系 畢業(yè)論文 第 20 頁(yè) 綜上知識(shí),可以得出入庫(kù)按鈕的 Onclick 事件的代碼: procedure (Sender: TObject)。 begin if length()10 then //新書(shū)書(shū)號(hào)長(zhǎng)度是否 10 begin messagedlg(39。書(shū)號(hào)不正確 39。,mterror,[mbok],0)。 。 exit。 end。 with do //檢 查新書(shū)的書(shū)號(hào)是否已經(jīng)存在 begin 。 (39。select Code from Book where Code =:Code39。)。 (39。Code39。).Value :=。 Open。 if RecordCount 0 then //此書(shū)號(hào)已經(jīng)存在 begin MessageDlg(39。書(shū)號(hào) 39。++39。已經(jīng)存在 39。,mtError,[mbok],0)。 。 Exit。 end。 Close。 end。 try
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1