VB-【萬(wàn)能XXX管理系統(tǒng)】各窗體核心代碼解釋

視頻地址:
【開(kāi)源講解】VB+sqlserver萬(wàn)能管理系統(tǒng)+安裝包vb和sqlserver+安裝運(yùn)行全流程

窗體及部分核心代碼詳細(xì)說(shuō)明
一:第一個(gè)窗體login(Form1.frm):

這個(gè)登錄窗體,連接數(shù)據(jù)庫(kù)用的ADO中的ADODB方式,ADODB的對(duì)象有

? ? ? ? ? ? ?
代碼解釋?zhuān)?/span>
Option Explicit:就是告訴VB,如果遇到一個(gè)變量它是沒(méi)有定義的,要報(bào)錯(cuò)的,而刪除這句的話,你隨便寫(xiě)出來(lái)一個(gè)沒(méi)有定義的變量,比如,定義了 dim temp as string后面的程序里你不小心把temp寫(xiě)成了tmp則vb認(rèn)為需要生成一個(gè)新變量定義dim tmp來(lái)使用,這個(gè)定義生成是自動(dòng)的。對(duì)于你來(lái)說(shuō),會(huì)發(fā)現(xiàn)程序似乎沒(méi)有問(wèn)題,卻一直運(yùn)行不對(duì)。
Trim()函數(shù):去掉字符串前面和后面的空格例如:StrA=" abc ";StrB=trim(StrA)StrB的值就變成了"abc"
MsgBox:信息提示函數(shù),用來(lái)提示我們當(dāng)前的指定信息最基本使用方法:msgbox “字符串”,其實(shí)就是彈出一個(gè)對(duì)話框。
vbOKOnly + vbExclamation:MsgBox的類(lèi)型,vbOKOnly只有一個(gè)“確定”按鈕
vbExclamation 左邊有個(gè)警告符號(hào)(黃色三角)
txtuser.SetFocus:即用戶名輸入框聚焦,意識(shí)是輸入完以后鼠標(biāo)光標(biāo)還在用戶名輸入框里閃爍等待輸入
sql = "select * from 系統(tǒng)管理 where 用戶名='" & txtuser.Text & "'"
rs_login.Open sql, conn, adOpenKeyset, adLockPessimistic?? '第一個(gè)添sql語(yǔ)句,第二個(gè)添連接對(duì)象,第三四個(gè)想了解可以看下圖

rs_login.Fields(1):Fields(0)相當(dāng)于第0列,F(xiàn)ields(1)相當(dāng)于第1列
?
第二個(gè)窗體:main即主界面

圖書(shū)管理系統(tǒng)主界面上方的菜單欄是用工具中的菜單編輯器生成的,你可以進(jìn)去菜單編輯器看中文對(duì)應(yīng)的英文詳細(xì)名字。
?
第三個(gè)窗體:添加圖書(shū)類(lèi)別frmaddbookstyle

rs_bookstyle.AddNew:為可更新的 Recordset 對(duì)象創(chuàng)建新記錄
rs_bookstyle.Update:將數(shù)據(jù)緩沖區(qū)中的內(nèi)容保存到數(shù)據(jù)庫(kù)中
?
第四/五個(gè)窗體:修改/刪除圖書(shū)類(lèi)別frmmodifybookstyle

rs_reader.CursorLocation = adUseClient:看窗口一代碼解釋中的圖:ADODB中的Recordset對(duì)象
?
Set DataGrid1.DataSource = rs_reader
當(dāng)在設(shè)計(jì)時(shí)設(shè)置了DataGrid 控件的 DataSource 屬性后,就會(huì)用數(shù)據(jù)源的記錄集來(lái)自動(dòng)填充該控件,下面三個(gè)分別是不允許添加新記錄、刪除、更新
DataGrid1.AllowAddNew = False????????????????????????????????
DataGrid1.AllowDelete = False????????????????????????????????
DataGrid1.AllowUpdate = False
?
第六個(gè)窗體:增加圖書(shū)信息frmaddbookinfo

Exit Sub:是到這就行結(jié)束,不再進(jìn)行下面的判斷了
IsDate:判斷輸入的是否為日期格式,日期可輸入2020-03-22或者2020/03/22
?
第七八個(gè)窗體:修改/刪除圖書(shū)信息frmmodifybookinfo

If userpow = "guest" Then
Frame2.Enabled = False
意識(shí)是當(dāng)不是管理員權(quán)限時(shí)下面Frame框里的四個(gè)按鈕都是灰色無(wú)法點(diǎn)擊
?
第九個(gè)窗體:frmfindbook查詢(xún)圖書(shū)窗體,同時(shí)也是圖書(shū)借閱管理-借書(shū)管理-添加借書(shū)窗體

第十個(gè)窗體:借書(shū)frmborrowbook窗體

rs_borrowbook.Fields(6) = DateAdd("Ww", qixian, Date)
比如現(xiàn)在是DATA是2020/3/23,ww表示一周的日數(shù)是7,本科的有效期限qixian是4,那么rs_borrowbook.Fields(6)的值是2020/4/20,即2020/3/23加上4*7是28天得2020/4/20。
詳細(xì)函數(shù)解釋?zhuān)篋ateAdd( interval, number, date):DateAdd函數(shù)返回包含一個(gè)日期的Variant(Data),這一日期還加上了一段時(shí)間間隔。
參數(shù)介紹:
1、Interval:必要的,字符串表達(dá)式,是所要加上去的時(shí)間間隔。
2、number:必要的,數(shù)值表達(dá)式,是要加上的時(shí)間間隔的數(shù)目。其數(shù)值可以為正數(shù)(得到未來(lái)的日期),也可以是負(fù)數(shù)(得到過(guò)去的日期)。
3、date:必要的,Variant(Date)或表示日期的文字,這一日期還加上了時(shí)間間隔。
interval參數(shù)介紹:
Yyyy 年
Q 季
m月
y一年的日數(shù)
d日
w一周的日數(shù)
ww周
h時(shí)
n分鐘
s秒
?
第十一個(gè)窗體:添加讀者類(lèi)別frmaddreaderstyle

?
第十二和十三個(gè)窗體修改和刪除讀者類(lèi)別frmmodifyreaderstyle

第十四個(gè)窗體:添加讀者信息frmaddrederinfo

Combo2.AddItem "男"
Combo2.AddItem "女"
這兩句是Combox控件的語(yǔ)法,依次往下添加內(nèi)容
?
第十五十六個(gè)窗體:修改和刪除讀者信息frmmodifyreaderinfo

?
第十七個(gè)窗體查詢(xún)讀者信息frmfindreader

If Check1.Value = vbChecked Then
判斷框中對(duì)勾是否點(diǎn)擊,點(diǎn)中對(duì)勾后才繼續(xù)執(zhí)行
?
第十八個(gè)窗體查詢(xún)借書(shū)信息frmfindborrowinfo

第十九個(gè)窗體還書(shū)frmbackbookinfo

第二十個(gè)窗體添加管理員frmadduser

sql = "select * from 系統(tǒng)管理"
rs_add.Open sql, conn, adOpenKeyset, adLockPessimistic
While (rs_add.EOF = False)
If Trim(rs_add.Fields(0)) = Trim(Text1.Text) Then
MsgBox "已有這個(gè)用戶", vbOKOnly + vbExclamation
。。。
Else
rs_add.MoveNext
End If
Wend
?
當(dāng)rs_add.Open sql, conn, adOpenKeyset, adLockPessimistic
這句執(zhí)行完時(shí),rs_add在系統(tǒng)管理表中的第一個(gè)記錄處,rs_add.EOF是False,While (rs_add.EOF = False)為真,循環(huán)執(zhí)行判斷是否已經(jīng)有這個(gè)用戶,然后rs_add.MoveNext使得rs_add依次往下移動(dòng),直到移到表中最后一個(gè)記錄時(shí)變?yōu)門(mén)RUE,終止while循環(huán)。
?
第二十一個(gè)窗體修改密碼frmchangepwd

If Trim(Text1.Text) <> Trim(Text2.Text) Then?????? '判斷兩次輸入的密碼是否一樣。
?
注:工程文件代碼里也有注釋解釋?zhuān)晃臋n后面部分窗體下面沒(méi)有代碼解釋?zhuān)驗(yàn)楹颓懊娲绑w的代碼大同小異,看懂前面幾個(gè)窗體代碼也就能看懂后面窗體代碼了。
視頻地址:
【開(kāi)源講解】VB+sqlserver萬(wàn)能管理系統(tǒng)+安裝包vb和sqlserver+安裝運(yùn)行全流程
