【正文】
沒有找到要查詢的信息 , vbOKOnly Exit Sub End If = False = False = False = True End Sub Private Sub Command2_Click() If = False Then 39。 strtext amp。 職工編號(hào) =39。這里不在細(xì)述。關(guān)閉原來的記錄集 strcon = select * from 技術(shù)人才表 = strcon = adLockPessimistic 39。刪除查詢后的記錄 Else 39。 刪除 在該窗體中對記錄的刪除方法是先查詢后刪除,工作界面如 48 圖所示,工作時(shí)首先輸入需要待刪除人員的職工編號(hào),然后計(jì)算機(jī)查找相應(yīng)記錄,在查到需要?jiǎng)h除的記錄后,單擊“刪除”按鈕即可刪除記錄。 If Text18 = Then MsgBox 請輸入職工編號(hào) ! , vbExclamation Text18 = Exit Sub End If = strque If = 0 Then MsgBox 沒有找到要查詢的信息 , vbOKOnly End If Call bind1 = False = False End Sub 因?yàn)檫@里是進(jìn)行查詢,這時(shí)數(shù)據(jù)應(yīng)該只能顯示不能修改,故需要將所有用于顯示數(shù)據(jù)的文本框鎖住,即除用于輸入姓名的文本框“ Text17”外,將其他文本框的 Locked 屬性設(shè)置為 ”True”。 strtext amp。 職工編號(hào) =39。 圖 47 技術(shù)人才信息查詢工作界面 Private Sub Command1_Click() 39。 事件過程如表4 6 所示。這里將 Text11 的 ”MultiLine”屬性設(shè)為:“ True”是為了能輸入多行文字。工作界面使用的控件,如表 43 所示,控件屬性設(shè)置如表 44 所示。常數(shù)聲明 Dim hWndl As Long Dim flag As Integer Private Sub Quit() Unload Me End Sub Private Sub e_Click() Unload Me End Sub Private Sub Form_Load() End Sub Private Sub gy_Click() 1 End Sub Private Sub Toolbar1_ButtonClick(ByVal Button As ) Select Case Case j 1 Case g 1 Case y 1 Case s Dim FileName1, FileName2 As String On Error GoTo A1 = *.mdb|*.mdb FileName1 = FileName2 = A1: If = 75 Or = 53 Then Exit Sub Else If = 70 Then If FileName1 = FileName2 Then MsgBox 文件已經(jīng)存在,請更改文件名 ! , vbOKOnly + vbExclamation Exit Sub Else Exit Sub End If Else FileCopy FileName1, FileName2 End If End If Case q 1 Case e Quit End Select End Sub 四、技術(shù)人才管理窗體設(shè)計(jì) 該窗體主要完成錄入、刪除、修改、查詢技術(shù)人才管理功能的調(diào)用,如圖4 4所示。 圖 43 人才管理主窗體 主窗體界面的設(shè)計(jì)代碼如下: Option Explicit 39。 _ strDataBaseName strConnect = strProvider amp。 strDataSource = Data Source= amp。 = stropen If = 0 Then stropen = select * from 密碼表 = stropen If Then MsgBox 兩次輸入密碼不同! , vbOKOnly Else (0) = (1) = MsgBox 用戶添加成功! , vbOKOnly End If Else MsgBox 已有該用戶! , vbOKOnly = Exit Sub End If End Sub Private Sub Command2_Click() Set connConnection = Nothing Unload Me End Sub Private Sub Command4_Click() Set connConnection = Nothing Unload Me End Sub Private Sub Form_Load() Dim strConnect As String Dim strProvider As String Dim strDataSource As String Dim strDataBaseName As String Dim pt As String strProvider = Provider= 。 amp。 = strtext If = 0 Then MsgBox 無此用戶! , vbOKOnly Exit Sub Else If Then MsgBox 兩次輸入密碼不同! , vbOKOnly Else (0) = account (1) = MsgBox 密碼修改成功! , vbOKOnly End If End If End Sub Private Sub Command1_Click() If = Then MsgBox 新帳號(hào)為空! , vbOKOnly Exit Sub End If stropen = select * from 密碼表 where 用戶名 =39。 account amp。 圖 42 用戶管理窗體 用戶管理窗體設(shè)計(jì)的代碼如下: Option Explicit Dim strque As String Dim strcon As String Dim stropen As String Dim strtext As String Private connConnection As Private rsRecordSet As Private Sub Command3_Click() If = Then MsgBox 新密碼為空! , vbOKOnly Exit Sub End If stropen = select * from 密碼表 strtext = select * from 密碼表 where 用戶名 =39。設(shè)置全局變量為 false 39。 39。 amp。 _ strDataBaseName strConnect = strProvider amp。 strDataSource = Data Source= amp。檢查正確的密碼 Private Sub cmdOK_Click() Dim strConnect As String Dim strProvider As String Dim strDataSource As String Dim strDataBaseName As String strProvider = Provider= 。這種辦法的最大缺陷是,一但密碼文件損壞或被刪除,程序就不能使用了。 將密碼放在一個(gè)文件里,每次輸入密碼時(shí)從密碼文件中讀出密碼,然后作密碼輸入是否正確的判斷也是一個(gè)辦法。如果密碼正確程序繼續(xù)運(yùn)行,否則退出程序。核 對密碼的正確性就是用預(yù)設(shè)密碼和當(dāng)前輸入的密碼進(jìn)行比較,以判斷密碼輸入的正確性,這里實(shí)際上是一個(gè)密碼保存的問題?!罢堓斎朊艽a”這幾個(gè)字是做在圖上的 密碼輸入的程序設(shè)計(jì) 密碼輸入的一般操作為:( 1)輸入密碼,在輸入密碼時(shí)一般要隱藏密碼 的真實(shí)字符;( 2)核對密碼的正確性。 1工作界面的設(shè)計(jì) 1 .用戶登錄的工作界面要放在啟動(dòng)界面上,但是 不能破壞啟動(dòng)界面的整體效果,為此設(shè)計(jì)用戶登錄的工作界面,如下圖 41 所示。當(dāng)密碼錯(cuò)誤輸入的次數(shù)超過設(shè)定次數(shù)時(shí),給出提示信息程序退出,這樣就防止了非法用戶對本程序的使用。 錄入 查詢 刪除 技術(shù)人才 管理人才 修改 人人 才才 管管 理理 系系 統(tǒng)統(tǒng) 圖 21 系統(tǒng)功能模塊設(shè)計(jì)圖 第四章 系統(tǒng)詳細(xì)設(shè)計(jì) 一、 啟動(dòng)程序設(shè)計(jì) 程序代碼如下: Private Sub Timer1_Timer() If 40 Then = * Else 1 Unload Me End If End Sub 二、用戶登錄程序設(shè)計(jì) 用戶登錄的作用是判斷使用本程序的用戶是否是合法用戶。根據(jù)這些功能,設(shè)計(jì)出的系統(tǒng)功能模塊如圖 21 所示。此時(shí)的數(shù)據(jù)流程如圖所示。下面分別介紹這些表結(jié)構(gòu)。本系統(tǒng)使用的數(shù)據(jù)庫為“人才信息 .mdb”。現(xiàn)在就可以在 Access數(shù)據(jù)庫中創(chuàng)建數(shù)據(jù)表了。 Access 2020 支持 ODBC(開放式數(shù)據(jù)庫連接)特性,用戶能夠訪問許多外部數(shù) 據(jù) 庫(如 Oracle 和 Sybase 等)的數(shù)據(jù)。 ● 開發(fā)應(yīng)用程序。 ● 強(qiáng)大的數(shù)據(jù)處理能力。 ● 定義表,利用表存儲(chǔ)相應(yīng)的信息。它是一個(gè)運(yùn)行與 Windows 平臺(tái)上的關(guān)系數(shù)據(jù)庫管理系統(tǒng),通過各種數(shù)據(jù)庫對象對數(shù)據(jù)進(jìn)行控制和管理。數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織,描述和存儲(chǔ),具較小的數(shù)據(jù)冗余度,較高的數(shù)據(jù)獨(dú)立性和可擴(kuò)展性,并且數(shù)據(jù)庫中的的數(shù)據(jù)可為各種合法用戶共享。對于本地 Access 數(shù)據(jù)庫來說,就是 .mdb 文件。 Jet 引擎真正讀取,寫入和修改數(shù)據(jù)庫,并處理所有內(nèi)部的事務(wù)。使用 VB 應(yīng)用程序 訪問數(shù)據(jù)庫時(shí), Jet 引擎被包含在一組動(dòng)態(tài)鏈接庫 DLL 文件中。 Visual Basic 數(shù)據(jù)庫應(yīng)用程序有 3 個(gè)部分,即數(shù)據(jù)引擎,數(shù)據(jù)庫和應(yīng)用程序。 以上介紹了 Visual Basic 的一些主要特性。 Visual Basic 提供開放式數(shù)據(jù)連接( Open Database Connectivity) ,即 ODBC功能,它可通過直接訪問或建立連接的方式使用并 操作后臺(tái)大型網(wǎng)絡(luò)數(shù)據(jù)庫,如SQL Server,Oracle 等。利用數(shù)據(jù)控件和數(shù)據(jù)庫管理窗口,可以直接建立或處理 Microsoft Access 格式的數(shù)據(jù)庫,并提供了強(qiáng)大的數(shù)據(jù)存儲(chǔ)和檢索功能。這樣可以方便編程人員,提高效率。例如,命令按鈕是一個(gè)對象,當(dāng)用戶單擊該按鈕時(shí),將產(chǎn)生一個(gè)“單擊”( Click)事件,而在產(chǎn)生該事件將執(zhí)行一段程序,用來實(shí)現(xiàn)指定的操作。 4.事件驅(qū)動(dòng)編程機(jī)制 Visual Basic 通過事件來執(zhí) 行對象的操作。 3.結(jié)構(gòu)化程序設(shè)計(jì)語言