?? frmbinfom.frm
字號:
VERSION 5.00
Object = "{67397AA1-7FB1-11D0-B148-00A0C922E820}#6.0#0"; "msadodc.ocx"
Object = "{CDE57A40-8B86-11D0-B3C6-00A0C90AEA82}#1.0#0"; "msdatgrd.ocx"
Begin VB.Form frmBInfoM
BackColor = &H00E0E0E0&
Caption = "圖書基本信息管理"
ClientHeight = 7320
ClientLeft = 3720
ClientTop = 2805
ClientWidth = 10320
LinkTopic = "Form1"
ScaleHeight = 7320
ScaleWidth = 10320
Begin VB.Frame Frame1
BackColor = &H00E0E0E0&
Caption = "選擇圖書分類"
Height = 2055
Left = 360
TabIndex = 5
Top = 240
Width = 9135
Begin VB.ListBox List2
BeginProperty Font
Name = "宋體"
Size = 9
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 1500
Left = 4920
TabIndex = 8
Top = 240
Width = 1575
End
Begin VB.ListBox List1
BeginProperty Font
Name = "宋體"
Size = 9
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 1500
Left = 2520
TabIndex = 7
Top = 240
Width = 1575
End
Begin VB.CheckBox chkAllType
BackColor = &H00E0E0E0&
Caption = "全部分類"
Height = 495
Left = 240
TabIndex = 6
Top = 480
Width = 1215
End
End
Begin VB.CommandButton cmdBack
Caption = "返回(&X)"
Height = 495
Left = 6960
TabIndex = 4
Top = 6120
Width = 975
End
Begin VB.CommandButton cmdDel
Caption = "刪除(&D)"
Height = 495
Left = 5640
TabIndex = 3
Top = 6120
Width = 855
End
Begin VB.CommandButton cmdModi
Caption = "修改(&M)"
Height = 495
Left = 4320
TabIndex = 2
Top = 6120
Width = 855
End
Begin VB.CommandButton cmdAdd
Caption = "添加(&A)"
Height = 495
Left = 2880
TabIndex = 1
Top = 6120
Width = 855
End
Begin MSDataGridLib.DataGrid gBookInfo
Bindings = "frmBInfoM.frx":0000
Height = 3015
Left = 360
TabIndex = 0
Top = 2760
Width = 9135
_ExtentX = 16113
_ExtentY = 5318
_Version = 393216
BackColor = 16761024
HeadLines = 1
RowHeight = 16
BeginProperty HeadFont {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋體"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋體"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ColumnCount = 2
BeginProperty Column00
DataField = ""
Caption = ""
BeginProperty DataFormat {6D835690-900B-11D0-9484-00A0C91110ED}
Type = 0
Format = ""
HaveTrueFalseNull= 0
FirstDayOfWeek = 0
FirstWeekOfYear = 0
LCID = 2052
SubFormatType = 0
EndProperty
EndProperty
BeginProperty Column01
DataField = ""
Caption = ""
BeginProperty DataFormat {6D835690-900B-11D0-9484-00A0C91110ED}
Type = 0
Format = ""
HaveTrueFalseNull= 0
FirstDayOfWeek = 0
FirstWeekOfYear = 0
LCID = 2052
SubFormatType = 0
EndProperty
EndProperty
SplitCount = 1
BeginProperty Split0
BeginProperty Column00
EndProperty
BeginProperty Column01
EndProperty
EndProperty
End
Begin MSAdodcLib.Adodc agBInfo
Height = 615
Left = 240
Top = 6000
Visible = 0 'False
Width = 2415
_ExtentX = 4260
_ExtentY = 1085
ConnectMode = 0
CursorLocation = 3
IsolationLevel = -1
ConnectionTimeout= 15
CommandTimeout = 30
CursorType = 3
LockType = 3
CommandType = 8
CursorOptions = 0
CacheSize = 50
MaxRecords = 0
BOFAction = 0
EOFAction = 0
ConnectStringType= 1
Appearance = 1
BackColor = -2147483643
ForeColor = -2147483640
Orientation = 0
Enabled = -1
Connect = ""
OLEDBString = ""
OLEDBFile = ""
DataSourceName = ""
OtherAttributes = ""
UserName = ""
Password = ""
RecordSource = ""
Caption = "Adodc1"
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋體"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
_Version = 393216
End
End
Attribute VB_Name = "frmBInfoM"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'定義查詢條件變量condition
Dim condition As String
Private Sub chkAllType_Click()
If chkAllType.Value = 0 Then
List1.Enabled = True
List2.Enabled = True
If List2.ListIndex >= 0 Then
cmdAdd.Enabled = True '如果選擇二級分類,則可以添加圖書信息
cmdModi.Enabled = True '如果選擇二級分類,則可以修改圖書信息
End If
End If
If chkAllType.Value = 1 Then
cmdAdd.Enabled = False '如果選擇全部分類,則不能添加圖書信息
cmdModi.Enabled = False '如果選擇全部分類,則不能修改圖書信息
List1.Enabled = False
List2.Enabled = False
condition = ""
Call AddGridBinfo '為gBookInfo添加圖書信息
End If
End Sub
'單擊"添加"按鈕,在gBookInfo內添加新圖書的基本信息
Private Sub cmdAdd_Click()
'給圖書信息編輯窗體frmBInfoEdit賦值
frmBInfoEdit.txtBNo = ""
frmBInfoEdit.txtBNo.Locked = False '允許編輯圖書編號文本框
frmBInfoEdit.txtBName = ""
frmBInfoEdit.txtBType = List1.List(List1.ListIndex)
frmBInfoEdit.txtBType.Locked = True
frmBInfoEdit.txtSubBType = List2.List(List2.ListIndex)
frmBInfoEdit.txtSubBType.Locked = True
frmBInfoEdit.txtAuthor = ""
frmBInfoEdit.txtPublisher = ""
frmBInfoEdit.txtPrice = "0"
frmBInfoEdit.txtMemo = ""
IsAdd = True
frmBInfoEdit.Show 1 '啟動圖書信息編輯窗體
agBInfo.Refresh '刷新agBinfo控件
Call AddGridBinfo 'AddGridBInfo刷新gBookInfo的圖書信息
End Sub
'返回按鈕
Private Sub cmdBack_Click()
Unload Me
End Sub
'單擊"刪除"按鈕,刪除gBookInfo所選擇的圖書記錄
Private Sub cmdDel_Click()
Dim isDel As Integer
Dim SQLStr As String
If agBInfo.Recordset.BOF Or agBInfo.Recordset.EOF Then
MsgBox "請選擇一條圖書記錄", vbInformation, "信息提示"
Else
isDel = MsgBox("是否刪除所選擇的記錄", vbYesNo + vbQuestion + vbDefaultButton2, "是否刪除")
If isDel = vbYes Then
SQLStr = "delete from BookInfo where BookNo='" + Trim(gBookInfo.Columns(0)) + "'"
SQLExt SQLStr '執行delete語句
MsgBox "刪除成功!", vbInformation, "刪除提示"
End If
End If
agBInfo.Refresh '刷新adoBInfo控件
Call AddGridBinfo 'AddGridBInfo刷新gBookInfo的圖書信息
End Sub
'單擊"修改"按鈕,在frmBInfoEdit窗體中顯示gBookInfo中所選記錄的各項值
Private Sub cmdModi_Click()
'如果沒記錄的話,不能進行修改
If agBInfo.Recordset.BOF Or agBInfo.Recordset.EOF Then
MsgBox "請選擇一條圖書記錄", vbInformation, "修改提示"
Exit Sub
End If
'給圖書編輯窗口賦值
frmBInfoEdit.txtBNo = Trim(agBInfo.Recordset.Fields(0))
frmBInfoEdit.txtBNo.Locked = True '禁止編輯圖書編號文本框
frmBInfoEdit.txtBName = Trim(agBInfo.Recordset.Fields(1))
frmBInfoEdit.txtBType = List1.List(List1.ListIndex)
frmBInfoEdit.txtBType.Locked = True
frmBInfoEdit.txtSubBType = Trim(agBInfo.Recordset.Fields(2))
frmBInfoEdit.txtSubBType.Locked = True
frmBInfoEdit.txtAuthor = Trim(agBInfo.Recordset.Fields(3))
frmBInfoEdit.txtPublisher = Trim(agBInfo.Recordset.Fields(4))
frmBInfoEdit.txtPrice = Trim(Str(agBInfo.Recordset.Fields(5)))
'agBInfo的"圖書說明"列為空,則txtMemo清空
If IsNull(Trim(agBInfo.Recordset.Fields(6))) Then
frmBInfoEdit.txtMemo = ""
Else
frmBInfoEdit.txtMemo = Trim(agBInfo.Recordset.Fields(6))
End If
IsAdd = False
frmBInfoEdit.Show 1 '啟動編輯窗體
agBInfo.Refresh '刷新adoBInfo控件
Call AddGridBinfo 'AddGridBInfo刷新gBookInfo的圖書信息
End Sub
'窗體加載事件
Private Sub Form_Load()
'初始化一級分類ListBox控件List1,二級分類List2
Dim SQLStr As String
SQLStr = "select * from BookType where UID=0"
AddTypeList List1, SQLStr
'初始化時顯示全部分類
List1.Enabled = False
List2.Enabled = False
chkAllType.Value = vbChecked
condition = "" '給condition初始化
Call AddGridBinfo '調用AddGridBInfo過程
End Sub
'DataGrid 數據網格控件加載數據
Private Sub AddGridBinfo()
Dim cnn As New ADODB.Connection
Set cnn = New ADODB.Connection '關鍵字New用于創建新對象cnn
cnn.ConnectionString = CONSTR '設置連接字符串的ConnectionString屬性
cnn.Open
agBInfo.ConnectionString = CONSTR '設置ADO控件AGBinfo的連接字符串
Dim tmpRecordSource As String '設置數據源
tmpRecordSource = "select i.BookNo as 圖書編號,i.BookName as 圖書名稱,t.TypeName as 分類名稱,i.Author as 作者,i.Publisher as 出版社,i.price as 圖書價格,i.Memo as 圖書說明 from BookInfo i,BookType t where i.TypeID=t.TypeID " + condition + " order by i.BookNo"
'tmpRecordSource = "select i.BookNo as 圖書編號,i.BookName as 圖書名稱," + "t.TypeName as 分類名稱,i.Author as 作者," + "i.Publisher as 出版社," + "i.Price as 圖書價格,i.Memo as 圖書說明" + "from BookInfo i,BookType t" + "where i.TypeID=t.TypeID ORDER BY i.BookNo"
agBInfo.RecordSource = tmpRecordSource '設置ADO控件的記錄源
agBInfo.Refresh
With gBookInfo '設置DataGrid控件每列顯示的寬度
.Columns(0).Width = 800
.Columns(1).Width = 1600
.Columns(2).Width = 1000
.Columns(3).Width = 700
.Columns(4).Width = 1500
.Columns(5).Width = 800
.Columns(6).Width = 1600
End With
End Sub
'單擊List1的數據項,使List2列出該數據對應的二級分類,以下為List1鼠標單擊事件代碼
Private Sub List1_Click()
Dim SQLStr As String
Dim rs As New ADODB.Recordset
'Dim cnn As New ADODB.Connection
'將List1中已選的一級分類下的二級圖書添加List2中
'SQLStr = "select * from BookType where UID =(select typeid from BookType where TypeName='List1.List(List1.ListIndex)')"
'SQLStr = "select * from "
SQLStr = "select * from BookType where UID="
SQLStr = SQLStr & "(select TypeID from BookType where TypeName='"
SQLStr = SQLStr & List1.List(List1.ListIndex) & "')"
'Call DBConnect
'Set cnn = New ADODB.Connection '關鍵字New用于創建新對象cnn
'cnn.ConnectionString = CONSTR '設置連接字符串的ConnectionString屬性
'cnn.Open
'rs.Open SQLStr, cnn, adOpenDynamic, adLockOptimistic
Set rs = SQLQuery(SQLStr)
'If rs.Fields(2) <> "select TypeID from BookType where TypeName='" & List1.List(List1.ListIndex) & "'" Then
' cmdModi.Enabled = True
' cmdAdd.Enabled = False
' Exit Sub
'End If
condition = " and t.UID=" & rs.Fields(2)
'If condition <> "" Then
AddTypeList List2, SQLStr
'End If
'condition = "and t.UID=" & rs.Fields(2)
Call AddGridBinfo 'AddGridBInfo刷新gBookInfo的圖書信息
cmdAdd.Enabled = False '如果選擇全部分類,則不能添加圖書信息
cmdModi.Enabled = True '如果選擇一級分類,則可以修改圖書信息
End Sub
'單擊List2數據項,gBookInfo列出List2數據項為二級分類名的圖書信息
Private Sub List2_Click()
Dim SQLStr As String
Dim rs As ADODB.Recordset
'在List2選擇二級圖書類別
SQLStr = "select * from booktype where typename='"
SQLStr = SQLStr & List2.List(List2.ListIndex) & "'"
Set rs = SQLQuery(SQLStr)
condition = "and i.TypeID=" & rs.Fields(0)
Call AddGridBinfo '為gBookInfo添加圖書信息
cmdAdd.Enabled = True '如果選擇二級分類,則可以添加圖書信息
cmdModi.Enabled = True '如果選擇二級分類,則可以修改圖書信息
End Sub
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -