版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
代碼實現(xiàn)登錄界面此界面是由Photoshop制作而成。在做這個登錄面時候想了諸多,最后選取了這種,感覺它看起來干凈,整潔。又不失其莊雅。加上本單位最有特色建筑,會讓人一目了然。登錄圖片顯示圖4.1登錄界面界面制作與實現(xiàn)在這個界面中,重要解決是判斷當前顧客輸入信息與否對的。如果對的,那么它屬于哪種類型顧客。由于此管理軟件在登錄后不同類型顧客顯示窗體與實現(xiàn)功能都不是同樣,它們會有所差別!(1)浮動按鈕實現(xiàn)擬定和取消兩個按鈕在鼠標沒有放上去之前看上去只是一種普通平面字效果,但是當你把鼠標放在這幾種字上面后,它會顯示凸出效果,按下后呈現(xiàn)凹陷效果。總體實現(xiàn)立體感覺。原理重要是在鼠標mousemove事件與線顏色變化組合來實現(xiàn)。重要代碼如下:在窗體中鼠標移動過程中,以及在窗體初始化時候,要把添加線.Visible屬性設(shè)立為False,只有在鼠標按下時候在變化其顏色即可。PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,xAsSingle,YAsSingle)Line1.Visible=FalseLine2.Visible=FalseLine3.Visible=FalseLine4.Visible=FalseLine5.Visible=FalseLine6.Visible=FalseLine7.Visible=FalseLine8.Visible=FalseEndSub鼠標按下時候設(shè)立線條顏色如下:PrivateSubLabel3_MouseDown(ButtonAsInteger,ShiftAsInteger,xAsSingle,YAsSingle)Line1.BorderColor=&H808080Line2.BorderColor=&H808080Line3.BorderColor=&HE0E0E0Line4.BorderColor=&HE0E0E0EndSub鼠標移動到標簽時候設(shè)立線條顏色如下:PrivateSubLabel3_MouseMove(ButtonAsInteger,ShiftAsInteger,xAsSingle,YAsSingle)Line1.BorderColor=&HE0E0E0Line2.BorderColor=&HE0E0E0Line3.BorderColor=&H808080Line4.BorderColor=&H808080Line1.Visible=TrueLine2.Visible=TrueLine3.Visible=TrueLine4.Visible=TrueEndSub(2)顧客類型判斷在數(shù)據(jù)庫中建了一人yonghu表。在添加管理人員時有兩種默認級別。管理員、普通顧客。管理員擁有對數(shù)據(jù)庫操作一切權(quán)限。普通顧客只有普通查看,數(shù)據(jù)轉(zhuǎn)換等。沒有刪除等操作功能。前顧客成功登錄后,會在主窗體狀態(tài)欄中顯示出當前顧客及其顧客類型。重要代碼如下:設(shè)立當前控件連接數(shù)據(jù)庫DimproviderAsStringDimdatasourceAsStringprovider="provider=Microsoft.jet.oledb.4.0"datasource="datasource="&App.Path&"\DB.mdb"WithAdodc1.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="yonghu".Refresh.Recordset.MoveFirstEndWith對顧客進行判斷IfText1.Text=""ThenMsgBox"請輸入顧客名!",48,"提示"ExitSubEndIfAdodc1.Recordset.Find"顧客='"&Text1.Text&"'"IfAdodc1.Recordset.EOF=FalseAndText2.Text=Trim(Adodc1.Recordset.Fields("pass"))Thenmain.Text1.Text=Adodc1.Recordset.Fields("級別")main.Text2.Text=Adodc1.Recordset.Fields("顧客")main.ShowUnloadMeElseText1.Text=""Text2.Text=""MsgBox"登錄不成功,請重新登錄!",48,"提示"EndIf程序主界面程序主界面為本軟件顯示核心某些。一切重要操作及顯示都通過這里完畢。整個界面重要由五某些構(gòu)成。菜單某些、工具欄、左側(cè)操作欄、右側(cè)顯示欄以及狀態(tài)欄。①界面效果圖如下:圖4.2程序主界面左側(cè)操作欄和右側(cè)顯示欄會在下面內(nèi)容中做簡介,當前只簡樸簡介一下工具欄和狀態(tài)欄,以及主窗體各個事件。②它實現(xiàn)辦法如下所示:DimoAsAdodcSeto=DataGrid1.datasourceo.Recordset.Deleteo.Recordset.Update這里重要是用到了ado對像辦法。用這個辦法得到數(shù)據(jù)源。下面是整個工具欄運營時代碼:SelectCaseButton.IndexCase1sel.Show1Case3add.Show1Case5OnErrorGoTonext2DimsAsAdodcSets=DataGrid1.datasourceIfs.RecordSource="users"Thenedit.Show1EndIfnext2:Case7OnErrorResumeNextDimoAsAdodcSeto=DataGrid1.datasourceo.Recordset.Deleteo.Recordset.UpdateCase9back.Show1Case11WithAdodc1.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="users"'.RefreshEndWithSetDataGrid1.datasource=Adodc1DataGrid1.RefreshCalldxCase13UnloadMeEndSelectmain.Text1.Text=Adodc1.Recordset.Fields("級別")main.Text2.Text=Adodc1.Recordset.Fields("顧客")StatusBar1.Panels(2).Text="當前顧客:"&Text2.TextStatusBar1.Panels(3).Text="顧客模式:"&Text1.TextStatusBar1.Panels(4).Text=Date&""&Time'設(shè)立普通顧客模式IfText1.Text="普通顧客"Thenyhgl.Visible=Falseg1.Visible=Falsejlsc.Visible=Falsegysz.Visible=FalseToolbar1.Buttons(5).Visible=FalseToolbar1.Buttons(6).Visible=FalseToolbar1.Buttons(7).Visible=FalseToolbar1.Buttons(8).Visible=FalseEndIfDataGrid1.Width=main.Width-SSTab1.WidthDataGrid1.Height=main.Height-StatusBar1.Height-CoolBar1.Height-750SSTab1.Height=main.Height-StatusBar1.Height-CoolBar1.Height-750Frame1.Height=main.Height-StatusBar1.Height-CoolBar1.Height-1200Frame2.Height=main.Height-StatusBar1.Height-CoolBar1.Height-1200Frame3.Height=main.Height-StatusBar1.Height-CoolBar1.Height-1200TreeView1.Height=main.Height-StatusBar1.Height-CoolBar1.Height-1500TreeView2.Height=main.Height-StatusBar1.Height-CoolBar1.Height-1500TreeView3.Height=main.Height-StatusBar1.Height-CoolBar1.Height-1500Y=main.Widthx=(Y-z)/4StatusBar1.Panels(1).Width=u+xStatusBar1.Panels(2).Width=v+xStatusBar1.Panels(3).Width=w+xStatusBar1.Panels(4).Width=m+xprovider="provider=Microsoft.jet.oledb.4.0"datasource="datasource="&App.Path&"\DB.mdb"WithAdodc1.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="users"'.RefreshEndWithWithAdodc2.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="gongyu".RefreshEndWithWithAdodc3.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="class".RefreshEndWithWithAdodc4.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="weisheng".RefreshEndWithWithAdodc5.Mode=adModeReadWrite.ConnectionString=provider&";"&datasourceEndWithWithAdodc6.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="dengji".RefreshEndWithWithAdodc7.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="qinshi".RefreshEndWithWithAdodc9.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="zichan".RefreshEndWithtreeview某些樹形顯示初始化在這里已經(jīng)做了幾種過程,調(diào)用即可。系統(tǒng)管理顧客管理①界面效果圖圖4.3顧客管理②界面制作與實現(xiàn)辦法這個界面總體來說各個控件比較簡樸,但是作為一種添加刪除管理員操作,它已經(jīng)連接到了數(shù)據(jù)庫,與數(shù)據(jù)庫yonghu表相聯(lián)。各個控件也與數(shù)據(jù)庫中表字段綁定。在窗體初始化時候要判斷當前數(shù)據(jù)庫表中與否有記錄,如果沒有記錄那么有些按鈕將會被設(shè)立成為失效狀態(tài),否則會浮現(xiàn)錯誤。設(shè)立代碼如下:DimproviderAsStringDimdatasourceAsStringprovider="provider=Microsoft.jet.oledb.4.0"datasource="datasource="&App.Path&"\DB.mdb"WithAdodc1.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="yonghu".RefreshEndWithOption1.Enabled=FalseOption2.Enabled=FalseIfAdodc1.Recordset.RecordCount=0ThenCommand2.Enabled=FalseCommand3.Enabled=FalseCommand5.Enabled=FalseCommand6.Enabled=FalseEndIfText2.Text=Text3.Text上一條與下一條功能一目了然,它們可以對當前表進行上一條記錄或下一條記錄依次查看。當找到記錄后,可以對其進行相對刪除、修改等操作。上一條記錄與下一條記錄在查看時有一種判斷。當表中記錄移到最前面(BOF)或最背面(EOF)時,會把上一條或下一條其中一種按鈕enable屬性設(shè)立為true。即不可此前查看或向后查看。上一條與下一條重要代碼如下:Adodc1.Recordset.MovePrevious'移動記錄Command6.Enabled=TrueIfAdodc1.Recordset.BOFThenAdodc1.Recordset.MoveFirstCommand5.Enabled=FalseEndIfAdodc1.Recordset.MoveNext'移動記錄Command5.Enabled=TrueIfAdodc1.Recordset.EOFThenAdodc1.Recordset.MoveLastCommand6.Enabled=FalseEndIf添加顧客可以添加使用該管理軟件顧客。添加時候可以選取所添加人物級別。軟件默以為兩個級別:管理員、普通顧客。管理員擁有對此軟件管理操作等一切權(quán)力。普通顧客,只有普通查看、查詢、備份、添加等權(quán)力。沒有對記錄刪除等權(quán)力。在添加顧客時你可以選取一種且必要選取一種。然后輸入此顧客顧客名和密碼即可!添加顧客重要代碼:IfCommand1.Caption="添加"ThenCommand2.Enabled=FalseCommand5.Enabled=FalseCommand6.Enabled=FalseCommand1.Caption="擬定"Command3.Caption="取消"Adodc1.Recordset.AddNewOption1.Enabled=TrueOption2.Enabled=TrueText1.Enabled=TrueText2.Enabled=TrueText3.Enabled=TrueText2.Text=""ElseIfText1.Text=""ThenMsgBox"顧客名不能為空!",48,"提示"ElseIfText2.Text=""ThenMsgBox"密碼不能為空!",48,"提示"ElseIfText2.Text<>Text3.TextThenMsgBox"密碼兩次需一致!",48,"提示"ElseIfText4.Text=""ThenMsgBox"請選取所建顧客類型!",48,"提示"ElseCommand2.Enabled=TrueCommand3.Enabled=TrueCommand5.Enabled=TrueCommand6.Enabled=TrueCommand3.Caption="編輯"Command1.Caption="添加"Adodc1.Recordset.UpdateText1.Enabled=FalseText2.Enabled=FalseText3.Enabled=FalseText4.Enabled=FalseOption1.Value=FalseOption2.Value=FalseOption1.Enabled=FalseOption2.Enabled=FalseEndIf刪除操作可以把當前記錄刪除掉。一經(jīng)刪除即不可以在恢復(fù)。因此在操作前要想好。刪除操作某些代碼:IfAdodc1.Recordset.RecordCount=1ThenCommand2.Enabled=FalseEndIfIf(MsgBox("你真想刪除當前記錄嗎?",vbOKCancel,"系統(tǒng)提示"))=vbOKThenAdodc1.Recordset.DeleteAdodc1.Recordset.MoveFirstAdodc1.RefreshEndIf編輯操作可以對當前所選取顧客進行編輯,可以修改其顧客名與密碼。當當前顧客感覺自己顧客名稱或密碼有泄露時,可以進行修改。修改記錄即更新表中某一條記錄。編輯操作重要代碼如下:Command2.Enabled=FalseText1.Enabled=TrueText2.Enabled=TrueText3.Enabled=TrueText4.Enabled=TrueOption1.Enabled=TrueOption2.Enabled=TrueCommand1.Caption="擬定"ElseIfCommand3.Caption="取消"ThenCommand3.Caption="編輯"Command1.Caption="添加"Command2.Enabled=TrueCommand5.Enabled=TrueCommand6.Enabled=TrueText2.Text=Text3.TextText1.Enabled=FalseText2.Enabled=FalseText3.Enabled=FalseText4.Enabled=FalseOption1.Value=FalseOption2.Value=FalseOption1.Enabled=FalseOption2.Enabled=FalseEndIf公寓設(shè)立公寓設(shè)立可以說是本程序中一核心某些。由于所有設(shè)立都在此進行。涉及公寓添加、修改、刪除。寢室添加、修改、刪除以及班級添加、修改和刪除操作。只有對的對這些設(shè)立進行添加修改,才干輸入對的記錄。這里重要涉及到問題是datagrid顯示,以及treeview及時形成新構(gòu)造。尚有某些就是對表記錄復(fù)雜操作。在點擊sstab各版時候,要在這時重新生成寢室設(shè)立中樹型構(gòu)造,SelectCasePreviousTabCase0Callstartree1Case1Combo1.ClearDimIAsIntegerI=1IfAdodc1.Recordset.RecordCount<>0ThenAdodc1.Recordset.MoveFirstDoWhileI<Adodc1.Recordset.RecordCountCombo1.AddItem(Adodc1.Recordset.Fields("公寓名稱"))Adodc1.Recordset.MoveNextI=I+1LoopEndIfCallstartree1Case2Callstartree1EndSelectEndSub(1)公寓設(shè)立①公寓設(shè)立效果圖圖4.4公寓設(shè)立②界面制作與實現(xiàn)辦法在這個界面中重要用到了一種Sstab控件與一種顯示表中內(nèi)容Datagrid控件。以及起到美觀作用Frame控件。在右下角文本框中可以輸入想要添加公寓名稱。然后點擊添加即可完畢添加操作。Datagrid中會及時刷新顯示更新內(nèi)容。要修改某條記錄時,要先對所要修改記錄進行選取,確認選取后,點擊下面修改按鈕,會在下面文本中顯示出所要修改公寓名稱,此時即可輸入要修改名字。然后點擊更新就會完畢此操作。Datagrid也會即時更新其內(nèi)容。刪除操作更為簡樸,選取想要刪除公寓名稱,點擊刪除,確認后完畢此操作。但是刪除后不會影響其他表中數(shù)據(jù)。其他表關(guān)于此公寓信息還會存在。在進行所有操作前,先要擬定數(shù)據(jù)庫已連接。在添加前要判斷所寫公寓名稱與否對的,即與否輸入名稱,該記錄不能為空,不為空則對數(shù)據(jù)庫表進行查找,判斷當前輸入記錄與否已在表中存在,如果已存在,則會給出提示,不存在,添加成功。Adodc1.Recordset.Find"公寓名稱='"&Text2.Text&"'"IfAdodc1.Recordset.EOF=FalseThenMsgBox"此公寓已存在",,"提示"Adodc1.Recordset.MoveFirstExitSubEndIfText3.Text=""IfText2.Text=""ThenMsgBox"輸入所要添加公寓名稱",,"提示"ExitSubEndIf添加:Adodc1.Recordset.AddNewAdodc1.Recordset.Fields("公寓名稱")=Text2.TextAdodc1.Recordset.UpdateAdodc1.RecordSource="gongyu"Text2.Text=""SetDataGrid2.datasource=Adodc1DataGrid2.Refresh修改公寓名稱:IfText3.Text=""ThenMsgBox"選取要修改公寓",,"提示"ExitSubEndIfIfCommand12.Caption="修改"ThenText2.Text=Text3.TextLabel6.Caption="輸入想要修改公寓名稱"Command12.Caption="更新"Command3.Enabled=FalseCommand7.Enabled=FalseElseIfCommand12.Caption="更新"ThenCommand3.Enabled=TrueCommand7.Enabled=TrueLabel6.Caption="輸入想要添加公寓名稱"Adodc1.Recordset.Fields("公寓名稱")=Text2.TextAdodc1.Recordset.UpdateAdodc2.Recordset.ActiveConnection.Execute"updateqinshiset公寓名稱='"&Text2.Text&"'where公寓名稱='"&Trim(Text3.Text)&"'"Adodc2.Recordset.UpdateCommand12.Caption="修改"EndIfSetDataGrid2.datasource=Adodc1DataGrid2.RefreshAdodc5.Recordset.UpdateSetmain.DataGrid1.datasource=Adodc5main.DataGrid1.Refresh刪除公寓名稱IfText3.Text=""ThenMsgBox"選取所要刪除公寓名稱",,"提示"ExitSubEndIfIf(MsgBox("你真想刪除公寓名稱為"&Text3.Text&"記錄嗎?",vbOKCancel,"系統(tǒng)提示"))=vbOKThenAdodc1.Recordset.DeleteAdodc1.Recordset.UpdateEndIfText3.Text=""SetDataGrid2.datasource=Adodc1DataGrid2.Refresh(2)寢室設(shè)立①寢室設(shè)立效果圖圖4.5寢室設(shè)立②界面制作與實現(xiàn)辦法此界面實現(xiàn)相對比公寓設(shè)立來說相對復(fù)雜某些。用到控件重要是Sstab與Treeview。但是在程序方面比較復(fù)雜。在添加一種寢室前先要選取所要添加寢室所在公寓。這個公寓可以點擊下面樹中節(jié)點,也可以在列表框中選取。樹中節(jié)點在點擊后會把父節(jié)點顯示在選取公寓背面列表框中,而選中節(jié)點會出當前寢室名稱里。你也可以自己進行添寫,確認公寓后即可添加完畢了。添加后會把Treeview重新刷新一下。以顯示更新后記錄。添加源碼:Adodc1.RefreshAdodc1.Recordset.Find"公寓名稱='"&Combo1.Text&"'"IfAdodc1.Recordset.EOF=TrueThenMsgBox"此公寓不存在",,"提示"Adodc1.Recordset.MoveFirstExitSubEndIfIfCombo1.Text=""OrText1.Text=""ThenMsgBox"請輸入所要添加寢室及其所屬公寓",,"提示"ExitSubEndIfWithAdodc2.Recordset.AddNew.Recordset.Fields(0).Value=Combo1.Text.Recordset.Fields(1).Value=Text1.Text.Recordset.UpdateEndWithCombo1.Text=""Text1.Text=""Callstartree1修改操作可以把當前選中寢室進行名稱修改與其所屬公寓進行修改。當要對名稱進行修改時,先要選取所要修改寢室名,選取后會在寢室名稱里顯示出來,把當前寢室名稱改成要修改寢室名稱,然后點擊修改即完畢名稱修改操作。當要對當前寢室所屬公寓進行修改時,需要先選取所要修改寢室,然后在上面公寓名稱后填寫所要修改寢室名稱。點擊修改后完畢此操作。但是這種操作不是常用。修改源碼:Adodc1.RefreshAdodc1.Recordset.Find"公寓名稱='"&Combo1.Text&"'"IfAdodc1.Recordset.EOF=TrueThenMsgBox"此公寓不存在",,"提示"Adodc1.Recordset.MoveFirstExitSubEndIfDimsqlAsStringOnErrorResumeNextIfCombo1.Text=""OrText1.Text=""ThenMsgBox"請在下面選取所要修改寢室",,"提示"ExitSubEndIf'sql="select*formqinshiwhere公寓名稱='"&Trim(Combo1.Text)&"'and寢室='"&Trim(Text1.Text)&"'"Adodc2.Recordset.ActiveConnection.Execute"updateqinshiset寢室='"&Text1.Text&"',公寓名稱='"&Trim(Combo1.Text)&"'where寢室='"&Trim(Text6.Text)&"'and公寓名稱='"&Trim(Text7.Text)&"'"Adodc2.Recordset.UpdateCombo1.Text=""Text1.Text=""Callstartree1刪除操作可以刪除掉當前樹型顯示中任何一種子節(jié)點,也就是這個樹型節(jié)點中寢室名稱,注意是,刪除后這個記錄只在qinshi表中刪除,其有關(guān)記錄不會被刪除掉,如果想刪除,還需要人工操作。實現(xiàn)辦法重要是對qinshi表操作,先對其進行查詢,查詢當前想要被刪除表與否存在,如果不存在,則給出提示,如果存在這條記錄,則在表中把它刪除掉,刪除后調(diào)用生成樹過程,把當前寢室設(shè)立中樹型構(gòu)造重新生成,更新記錄。實現(xiàn)某些代碼如下所示:IfCombo1.Text=""OrText1.Text=""OrCombo1.Text="公寓管理系統(tǒng)"ThenMsgBox"選取所要刪除寢室",,"提示"ExitSubEndIfIf(MsgBox("你真想刪除"&Combo1.Text&""&"寢室為"&Text1.Text&"記錄嗎?",vbOKCancel,"系統(tǒng)提示"))=vbOKThenAdodc2.RefreshAdodc2.Recordset.ActiveConnection.Execute"deletefromqinshiwhere公寓名稱='"&Trim(Combo1.Text)&"'and寢室='"&Trim(Text1.Text)&"'"Adodc2.Recordset.UpdateEndIfCombo1.Text=""Text1.Text=""Callstartree1在treeview點擊時候,上面文本框中會顯示相應(yīng)記錄,這重要是對treeview進行了設(shè)立,代碼如下:PrivateSubTreeView1_NodeClick(ByValNodeAsMSComctlLib.Node)OnErrorResumeNextText1.Text=TreeView1.SelectedItem.TextCombo1.Text=TreeView1.SelectedItem.ParentText6.Text=TreeView1.SelectedItem.TextText7.Text=TreeView1.SelectedItem.ParentEndSub(3)班級設(shè)立①班級設(shè)立效果圖圖4.6班級設(shè)立②界面制作與實現(xiàn)辦法此界面制作與公寓設(shè)立基本一致。在這個界面中重要用到了一種Sstab控件與一種顯示表中內(nèi)容Datagrid控件。以及起到美觀作用Frame控件。在右下角文本框中可以輸入想要添加班級名稱。然后點擊添加即可完畢添加操作。Datagrid中會及時刷新顯示更新內(nèi)容。要修改某條記錄時,要先對所要修改記錄進行選取,確認選取后,點擊下面修改按鈕,會在下面文本中顯示出所要修改班級名稱,此時即可輸入要修改名字。然后點擊更新就會完畢此操作。Datagrid也會即時更新其內(nèi)容。刪除操作更為簡樸,選取想要刪除班級名稱,點擊刪除,確認后完畢此操作。添加班級源碼:Adodc3.Recordset.Find"class='"&Text4.Text&"'"IfAdodc3.Recordset.EOF=FalseThenMsgBox"此班級已存在",,"提示"Adodc3.Recordset.MoveFirstExitSubEndIfText5.Text=""IfText4.Text=""ThenMsgBox"輸入所要添加班級名稱",,"提示"ExitSubEndIfAdodc3.Recordset.AddNewAdodc3.Recordset.Fields("class")=Text4.TextAdodc3.Recordset.UpdateAdodc3.RecordSource="class"Text4.Text=""SetDataGrid3.datasource=Adodc3DataGrid3.Refresh修改班級源碼:IfCommand10.Caption="修改"ThenText4.Text=Text5.TextLabel6.Caption="輸入想要修改班級名稱"Command10.Caption="更新"Command6.Enabled=FalseCommand9.Enabled=FalseElseIfCommand10.Caption="更新"ThenCommand9.Enabled=TrueCommand6.Enabled=TrueLabel6.Caption="輸入想要添加班級名稱"Adodc3.Recordset.Fields("class")=Text4.TextAdodc3.Recordset.UpdateCommand10.Caption="修改"EndIf刪除班級源碼:IfText5.Text=""ThenMsgBox"選取所要刪除班級名稱",,"提示"ExitSubEndIfIf(MsgBox("你真想刪除班級名稱為"&Text5.Text&"記錄嗎?",vbOKCancel,"系統(tǒng)提示"))=vbOKThenAdodc3.Recordset.DeleteAdodc3.Recordset.UpdateEndIfText5.Text=""SetDataGrid3.datasource=Adodc3DataGrid3.RefreshEndSub數(shù)據(jù)備份數(shù)據(jù)備份是一種數(shù)據(jù)庫軟件必不可少一某些,運用它可以把當前數(shù)據(jù)庫表進行全面?zhèn)浞?,以備后來使用。由于在操作中也許會導(dǎo)致數(shù)據(jù)遭到破壞,或者是系統(tǒng)因素使數(shù)據(jù)庫損壞,或者是某些其他人為因素,這樣你可以用此功能把數(shù)據(jù)恢復(fù)到最后一次備份狀態(tài),使損失做到至少,經(jīng)常備份,操作起來更有安全感。①數(shù)據(jù)備份效果圖圖4.7數(shù)據(jù)備份效果圖②功能實現(xiàn)界面制作相對程序來說比較簡樸,用到是coolbar控件,點擊按鈕可以選取備份途徑。然后點擊數(shù)據(jù)備份即可。窗體初始化某些代碼如下:Dimcnn1AsADODB.ConnectionDimrstschemaAsADODB.RecordsetDimstrcnnAsStringSetcnn1=NewADODB.Connectionstrcnn="provider=Microsoft.jet.oledb.4.0;"&"datasource="&App.Path&"\db.mdb"cnn1.OpenstrcnnSetrstschema=cnn1.OpenSchema(adSchemaTables)DoUntilrstschema.EOFtemp=rstschema!Table_NameIfLeft(temp,1)<>"M"ThenEndIfrstschema.MoveNextLoopcnn1.CloseOnErrorGoToerrPathName=App.Path&"\db.MDB"dbasize=FileLen(PathName)err:ExitSub數(shù)據(jù)備份某些在本程序中用到了一種模塊,在模塊中有一種辦法,dobackup。點擊備份按鈕后開始備份,代碼如下:IftxtDestination<>""ThenDoBackupPathName,txtDestinationMsgBox"備份成功!",,"提示"ElseIftxtDestination=""ThenMsgBox"Youmustspecifyadistinationforthebackup",vbCritical其中DoBackup為模塊中已定義辦法,在這里進行調(diào)用。Dobackup實現(xiàn)辦法代碼如下所示:DimlFileOpAsLongDimlresultAsLongDimlFlagsAsLongDimSHFileOpAsSHFILEOPSTRUCTDimstrSourceDirAsStringDimstrDestinationDirAsStringScreen.MousePointer=vbHourglassBackupFolderName=strDestinationPathMkDirBackupFolderName&"\Backup-"&Format(Date,"yyyy.mm.dd")lFileOp=FO_COPYlFlags=lFlagsAndNotFOF_SILENTlFlags=lFlagsOrFOF_NOCONFIRMATIONlFlags=lFlagsOrFOF_NOCONFIRMMKDIRlFlags=lFlagsOrFOF_FILESONLYWithSHFileOp.wFunc=lFileOp.pFrom=strSourcePath&vbNullChar.pTo=strDestinationPath&"\Backup-"&Format(Date,"yyyy.mm.dd")&vbNullChar.fFlags=lFlagsEndWithlresult=SHFileOperation(SHFileOp)Screen.MousePointer=vbDefaultfrmBackupDba.lblStatus="BackupComplete"在備份分前先要選取一種備份途徑,點擊…那個按鈕開始進行選取,實現(xiàn)辦法如下:DimstrTempAsStringstrTemp=fBrowseForFolder(Me.hwnd,"Selectbackuppath")IfstrTemp<>""ThentxtDestination=strTempEndIf數(shù)據(jù)恢復(fù)界面同上,它功能重要是在當前數(shù)據(jù)庫遭到破壞后,可以運用它來進行數(shù)據(jù)恢復(fù),在數(shù)據(jù)恢復(fù)前要選取所要恢復(fù)數(shù)據(jù)庫途徑,如下:DimstrTempAsStringstrTemp=fBrowseForFolder(Me.hwnd,"RestoreFrom")IfstrTemp<>""ThentxtSource=strTempdbasize2=FileLen(txtSource&"\db.MDB")lblSelectedDba="SelectedBackupDatabaseis:"&Format((dbasize2/1024)/1024,"standard")&"MB."cmdRestore.Enabled=TrueEndIfErro:SelectCaseerr.NumberCase53'FileNotFoundlblSelectedDba="NoBackupatthislocation"Toolbar2.Enabled=FalseEndSelect它重要是查看數(shù)據(jù)庫與否存在,如果所恢復(fù)數(shù)據(jù)不存在,則會提示錯誤。數(shù)據(jù)恢復(fù)也用到了一種辦法,在模塊中也已經(jīng)定義了該辦法DoRestore。數(shù)據(jù)恢復(fù)代碼如下:IfMsgBox("Restoringdatabasefromlocation"&txtSource&"willreplaceexistingdatabasefiles.DoyouwanttoContunue",vbYesNo)=vbYesThenDoRestoretxtSource.Text,App.PathIfNoDba=TrueThenMsgBox"DatabaseRestoredClickOktoExitProgram"frmRestoreDba.HideUnloadfrmRestoreDbaEndIfElselblStatus.Caption="DatabaseRestoreCanceled"EndIf其中DoRestore實現(xiàn)功能源碼如下所示:DEFSOURCE="PROVIDER=Microsoft.jet.oledb.4.0;PersistSecurityInfo=False;DataSource="DBName="\db.MDB;JetOLEDB:DatabasePassword=matrix-se;"SetDb=NewADODB.ConnectionDb.OpenDEFSOURCE&App.Path&DBNameDimlFileOpAsLongDimlresultAsLongDimlFlagsAsLongDimSHFileOpAsSHFILEOPSTRUCTDimstrSourceDirAsStringDimstrDestinationDirAsStringDb.CloseScreen.MousePointer=vbHourglassBackupFolderName=strDestinationPathlFileOp=FO_COPYlFlags=lFlagsAndNotFOF_SILENTlFlags=lFlagsOrFOF_NOCONFIRMATIONlFlags=lFlagsOrFOF_NOCONFIRMMKDIRlFlags=lFlagsOrFOF_FILESONLYWithSHFileOp.wFunc=lFileOp.pFrom=strSourcePath&"\db.MDB"&vbNullChar.pTo=strDestinationPath&vbNullChar.fFlags=lFlagsEndWithlresult=SHFileOperation(SHFileOp)SetDb=NewADODB.ConnectionDb.OpenDEFSOURCE&App.Path&DBNameScreen.MousePointer=vbDefaultfrmRestoreDba.lblStatus="RestoreComplete"闡明:本程序中此某些內(nèi)容參照了網(wǎng)上同類型代碼,對其進行修改后得到此成型作品,從功能上來講,它已經(jīng)實現(xiàn)了它所要完畢工作,通過測試已經(jīng)沒有問題,但是實現(xiàn)源代碼,也只有某些掌握。這實屬本人精力與能力有限所置。學(xué)生宿舍管理學(xué)生請假學(xué)生請假與違規(guī)在一種公寓管理中是最常用問題了,因此在此軟件中加上了這兩項功能。用它們可以隨時記錄請假記錄。①學(xué)生請假記錄圖片顯示圖4.9學(xué)生請假效果圖②界面制作與實現(xiàn)此界面重要是對學(xué)生請假記錄做一種添加。運用它可以把學(xué)生基本請假資料保存起來。其中日期是系統(tǒng)當前日期,它是不可以進行更改,然后在其他文本框中輸入其他詳細資料即可以。這里添加操作用是Adodc控件,所有文本框在初始時候沒有同Adodc綁定,而是在代碼中與數(shù)據(jù)庫中表字段進行綁定,然后進行添加操作。這樣做在使用時候有很大以便之處。第一是窗體在初始化時不會顯示任何記錄,不用設(shè)立文本框為空等一系列操作。第二是當進行記錄輸入時,發(fā)現(xiàn)問題不用輸入時,不按添加按鈕記錄就不會進行添加。注意是,在添加前要擬定所有文本框都要進行詳細填寫,否則會提示輸入詳細信息。添加重要代碼如下:IfText1.Text=""OrText2.Text=""OrText3.Text=""OrText4.Text=""OrText5.Text=""OrText6.Text=""OrText7.Text=""OrText8.Text=""OrText9.Text=""ThenMsgBox"請輸入詳細信息!",,"系統(tǒng)提示"ElseWithAdodc1.Recordset.AddNew.Recordset.Fields(0).Value=Text1.Text.Recordset.Fields(1).Value=Text2.Text.Recordset.Fields(2).Value=Text3.Text.Recordset.Fields(3).Value=Text4.Text.Recordset.Fields(4).Value=Text5.Text.Recordset.Fields(5).Value=Text6.Text.Recordset.Fields(6).Value=Text7.Text.Recordset.Fields(7).Value=Text8.Text.Recordset.Fields(8).Value=Text9.Text.Recordset.UpdateEndWithSetmain.DataGrid1.datasource=Adodc1main.DataGrid1.RefreshEndIf學(xué)生違規(guī)①學(xué)生違規(guī)記錄圖片顯示圖4.10學(xué)生違規(guī)效果圖此界面與上面請假記錄差不多。它重要是對學(xué)生違規(guī)記錄做一種添加。其中日期也是系統(tǒng)當前日期,它是不可以進行更改,然后在其他文本框中輸入其他詳細資料即可以這里違規(guī)操作用也是Adodc控件,所有文本框在初始時候也沒有同Adodc綁定,它也是在代碼中與數(shù)據(jù)庫中表字段進行綁定,然后進行添加操作。其他操作同上面基本是一致,對于違規(guī)在主界面左側(cè)并沒有迅速顯示操作,只可以用記錄查看里面違規(guī)查看進行選取查看。在這里所添寫記錄也要全面某些,重要是為了后來查找更為以便,如果不全,系統(tǒng)會提示?、谶`規(guī)某些代碼如下:在load事件里對數(shù)據(jù)庫鏈接解決,以及日期文本框設(shè)立,代碼如下:provider="provider=Microsoft.jet.oledb.4.0"datasource="datasource="&App.Path&"\DB.mdb"WithAdodc1.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdTable.RecordSource="qingjia".RefreshEndWithText1.Text=DateText1.Enabled=False擬定無誤后,進行添加,代碼如下:IfText1.Text=""OrText2.Text=""OrText3.Text=""OrText4.Text=""OrText5.Text=""OrText6.Text=""OrText7.Text=""OrText8.Text=""OrText9.Text=""ThenMsgBox"請輸入詳細信息!",,"系統(tǒng)提示"ElseWithAdodc1.Recordset.AddNew.Recordset.Fields(0).Value=Text1.Text.Recordset.Fields(1).Value=Text2.Text.Recordset.Fields(2).Value=Text3.Text.Recordset.Fields(3).Value=Text4.Text.Recordset.Fields(4).Value=Text5.Text.Recordset.Fields(5).Value=Text6.Text.Recordset.Fields(6).Value=Text7.Text.Recordset.Fields(7).Value=Text8.Text.Recordset.Fields(8).Value=Text9.Text.Recordset.UpdateEndWithSetmain.DataGrid1.datasource=Adodc1main.DataGrid1.Refresh信息查看記錄查看可以讓你對已錄入記錄進行各種符合條件查找,顯示符合條件記錄。這里重要涉及四個方面查看:衛(wèi)生查看、請假查看、違規(guī)查看、資產(chǎn)查看。下面分別簡介。在記錄查看中尚有其他三項查看方式,分別是請假、違規(guī)、資產(chǎn)三項記錄查看。它們實現(xiàn)辦法與窗體與上面衛(wèi)生查看基本相似。①請假查看圖4.14請假查看效果圖用它可以對當前所有記錄以及有效日期內(nèi)記錄進行查看。代碼如下:DimsqlAsStringDimsAsStrings=Combo1.TextIfOption1.Value=TrueThenSetmain.DataGrid1.datasource=Adodc1main.DataGrid1.RefreshElseIfOption2.Value=TrueThensql="select*fromqingjiawhere日期='"&Trim(s)&"'"WithAdodc3.Mode=adModeReadWrite.ConnectionString=provider&";"&datasource.CommandType=adCmdText.RecordSource=sql.RefreshEndWithSetmain.DataGrid1.datasource=Adodc3main.DataGrid1.RefreshEndIfUnloadMe在窗體load中要設(shè)立已經(jīng)添加日期,需要對表進行條件查詢,代碼如下:s="selectdistinct日期fromqingjia"WithAdodc2.Mode=adModeReadWrite.ConnectionString
溫馨提示
- 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年托育綜合服務(wù)中心建設(shè)項目合同文本6篇
- 2024年挖掘機操作培訓(xùn)及認證服務(wù)合同3篇
- 2024年特許經(jīng)營協(xié)議:品牌加盟
- 云南昆明房屋交易合同樣本
- 物業(yè)服務(wù)合同的創(chuàng)新發(fā)展趨勢
- 工廠定制保安服務(wù)合同
- 毛石供應(yīng)合同協(xié)議條款
- 集裝箱銷售購銷合同
- 官方租賃服務(wù)合同范本
- 景觀鋅鋼欄桿網(wǎng)采購合同
- 確認民族成分申請書
- 05標準工時及產(chǎn)能計算表
- (完整word版)240導(dǎo)線壓接說明
- 招標代理服務(wù)費收費標準及費用計算器
- 雞西730煤機電器圖冊
- 電力電子-降壓斬波電路設(shè)計
- 電力系統(tǒng)穩(wěn)定器
- 鄉(xiāng)鎮(zhèn)迎接國家第三方評估核查工作方案
- 軸類零件加工工藝設(shè)計畢業(yè)論文.doc
- 60Si2Mn汽車板簧熱處理工藝設(shè)計
- 杭州學(xué)軍中學(xué)深化高中課程改革實施方案(教師版)
評論
0/150
提交評論