【正文】
七個 statictext 組件,五個 DBedit 組件,一個 DBmemo 組件,兩個 button 組件。 var i:integer。 with do begin 。select code from book39。 open。 for i:=0 to recordcount1 do begin (fieldbyname(39。).AsString )。 end。 end。 procedure (Sender: TObject)。book39。Name39。Author39。press39。outdate39。cost39。memo039。 if locate(39。, ,[]) then edit else showmessage(39。 )。 except messagedlg(39。,mtError,[mbok],0)。 end。 procedure (Sender: TObject。 Shift: TShiftState)。 end。在窗體中添加 兩個 groupbox 組件,兩個 radiobutton 組件,四個 statictext 組件,四個button 組件,四個 edit 組件,一個 listview 組件。 begin try with do //將讀者數(shù)據(jù)表 reader 中所有記錄加入到 listview1 中 begin 。select * from reader order by readerID39。 open。 while not eof do begin with do begin caption:=fieldbyname(39。).asstring。name39。 if fieldbyname(39。).asstring=39。 then (39。) else (39。)。idcardno39。 end。 end。 end。 messagedlg(39。,mtError,[mbok],0)。 end。 begin close。 procedure (Sender: TObject)。 checked:integer。 (39。)。ReaderID39。 open。此讀者還有圖書沒有歸還,是否刪除? 39。 (39。)。readerid39。 execsql。 end else checked:=IDno。 close。 except checked:=idno。 if checked=IDyes then begin with do //從讀者數(shù)據(jù)表中刪除讀者數(shù)據(jù) begin 。delete from reader where readerid=:readerid39。 (39。).Value :=[i].Caption 。 end。 end else if checked=IDno then exit。 刪除 39。 出錯39。 end。 procedure (Sender: TObject)。39。39。39。 end。 begin if then begin if length()9 then //為新讀者提供的借書證號長度是否為 9 begin 30 messagedlg(39。,mtError,[mbok],0)。 end。 (39。)。readerid39。 open。 借書證號 39。 已經(jīng)存在39。 exit。 close。 try with do ///將新讀者的信息插入到數(shù)據(jù)庫中 begin 。insert into reader(readerid,name,sex,idcardno)39。values(:readerid,:readername,:sex,:idcardno)39。 (39。).Value := 。readername39。 (39。).Value :=inttostr(ex) 。idcardno39。 execsql。 except messagedlg(39。+ +39。,mterror,[mbok],0)。 end。 if then begin if length( )9 then begin messagedlg(39。,mterror,[mbok],0)。 end。 (39。 +39。39。++39。39。)。readername39。 31 (39。).Value :=inttostr(ex) 。idno39。 execsql。 except messagedlg(39。+ +39。,mterror,[mbok],0)。 end。 :=39。 :=39。 :=39。 :=0。讀者信息已成功添加! 39。 end。 var i:integer。 :=[i].Caption 。男 39。 :=[i].[2]。 end。在窗體中添加三個 button 組件,兩個 ADOquery 組件,一個 datasource 組件, 9 個 DBedit組件,一個 DBmemo 組件, 12 個 statictext 組件, 32 程序主要代碼如下: procedure (Sender: TObject)。 begin with do begin 。select code from book39。 open。 for i:=0 to recordcount1 do begin (fieldbyname(39。).AsString )。 end。 end。 procedure (Sender: TObject)。 owntime:Tdate。39。39。39。39。book39。name39。author39。press39。outdate39。cost39。memo039。 if not locate(39。, ,[]) then begin messagedlg(39。,mterror,[mbok],0)。 end。 except messagedlg(39。,mterror,[mbok],0)。 try with do begin 。select * from lend where code=:code39。 (39。).Value :=。 if recordcount0 then begin fdate:=fieldbyname(39。).AsDateTime 。 :=floattostr(owntime)。readerid39。 :=true。 if strtoint( )60 then begin :=true。 :=floattostr((strtoint( )60)*)。 :=false。 。 end else begin 。 :=false。 end。 end。 end。 var Key: Word。 begin if key=13 then bobox1change(sender)。 procedure (Sender: TObject)。 (39。)。readerid39。 open。 messagedlg(39。+ +39。,mterror,[mbok],0)。 exit。 close。 try with do begin 。select count(readerid) from lend where readerid=:readerid39。 (39。).Value := 。 :=inttostr(fields[0].Value )。 end。039。 :=false。 。 end。 var tempownbook:townbook。 mmcode:string。39。 35 (39。)。readerid39。 open。 。code39。 while not eof do begin //with tempadoquery1 do with do begin 。select * from book where code=:code39。 (39。).Value :=mmcode。 :=fieldbyname(39。).asstring。name39。 :=fieldbyname(39。).asstring。 (39。)。code39。code39。 (39。).Value := 。 :=round(datefieldbyname(39。).AsDateTime)。 end。 end。 end。 ()。 (inttostr())。 end。 end。 end。 end。 end。有以下書籍沒按時歸還 39。 exit。 try with do begin 。insert into lend(code,readerid,outdate)39。 values(:code,:readerid,:outdate)39。 (39。).value:=。readerid39。 (39。).value:=datetostr(now())。 :=false。借書成功。)。 except messagedlg(39。,mterror,[mbok],0)。 end else begin showmessage(39。)。 end。 procedure (Sender: TObject)。 (39。)。code39。 execsql。 :=false。還書成功。)。 except messagedlg(39。,mterror,[mbok],0)。 :=39。 :=39。 :=39。 :=39。 end。 begin close。 ⑾ .規(guī)章制度窗體設計: 37 程序界面如 下: 程序主要代碼如下: procedure (Sender: TObject)。 end。 begin close。 六、本系統(tǒng)各個功能的 運行 見“運行錄像 .exe”。對于不同子系統(tǒng)之間的切換,采用了登錄功能。先考慮在進入子系統(tǒng)時一應該做什么,進入子系統(tǒng)之后又應該做什么,提供哪些服務等。第三,對于圖書管理子系統(tǒng),用戶進入是首先調(diào)用相關(guān)的數(shù)據(jù)表,進入系統(tǒng)后,子系統(tǒng)提供圖書管理、讀者管理、借閱管理的功能。 進入系統(tǒng)的設計階段,嚴格遵循以上的思路進行。進行功能模塊設計時,采用反復調(diào)試和修改的方法保證程序的正確性和可靠性