📄 frmclient.frm
字号:
Text = "Combo1"
Top = 360
Width = 855
End
Begin VB.TextBox Text1
Height = 375
Index = 4
Left = 1080
TabIndex = 6
Top = 1440
Width = 2295
End
Begin VB.TextBox Text1
Height = 375
Index = 5
Left = 5040
TabIndex = 7
Top = 1440
Width = 1215
End
Begin VB.Label Label1
Caption = "备 注"
Height = 255
Index = 6
Left = 240
TabIndex = 33
Top = 2400
Width = 735
End
Begin VB.Label Label1
Caption = "租户编号"
Height = 255
Index = 0
Left = 240
TabIndex = 16
Top = 360
Width = 735
End
Begin VB.Label Label1
Caption = "租户姓名"
Height = 255
Index = 1
Left = 3360
TabIndex = 15
Top = 360
Width = 735
End
Begin VB.Label Label1
Caption = "工作单位"
Height = 255
Index = 2
Left = 240
TabIndex = 14
Top = 960
Width = 735
End
Begin VB.Label Label1
Caption = "电话"
Height = 255
Index = 3
Left = 6360
TabIndex = 13
Top = 960
Width = 495
End
Begin VB.Label Label2
Caption = "性别"
Height = 255
Left = 6360
TabIndex = 12
Top = 360
Width = 495
End
Begin VB.Label Label1
Caption = "身份证号"
Height = 255
Index = 4
Left = 240
TabIndex = 11
Top = 1560
Width = 735
End
Begin VB.Label Label1
Caption = "租住人数"
Height = 255
Index = 5
Left = 4080
TabIndex = 10
Top = 1560
Width = 735
End
End
End
End
Attribute VB_Name = "frmClient"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'定义几个共用变量
Dim rs_client As New ADODB.Recordset
Dim rs_count As New ADODB.Recordset
Dim sqlcount As String
Dim sqlclient As String
'设置2个add变量用于保存时判断是从添加还是修改后保存
Dim addf '用于家庭租户选项卡
Dim addg '用于公司租户选项卡
Private Sub cmdadd_Click()
'设置除保存和取消按钮外的其他按钮不可用
cmdAdd.Enabled = False
cmdEdit.Enabled = False
cmdDel.Enabled = False
cmdSave.Enabled = True
cmdCancel.Enabled = True
cmdFirst.Enabled = False
cmdPrev.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
cmdQuery.Enabled = False
'需要判断当前是在家庭租户选项卡还是公司租户选项卡上
'家庭租户选项卡
If SSTab1.Tab = 0 Then
'需要清空所有text框,并且设置它们可写
For i = 0 To 6
Text1(i).Text = ""
Text1(i).Enabled = True
Next i
Combo1.Enabled = True
'addf变量用于保存时判断是从添加还是修改后保存
addf = 1
Text1(0).SetFocus
'公司租户选项卡
ElseIf SSTab1.Tab = 1 Then
'需要清空所有text框,并且设置它们可写
For i = 7 To 14
Text1(i).Text = ""
Text1(i).Enabled = True
Next i
'addg变量用于保存时判断是从添加还是修改后保存
addg = 1
Text1(7).SetFocus
End If
End Sub
Private Sub cmdCancel_Click()
'取消按钮用于用户添加或修改过程中放弃添加或修改操作
cmdSave.Enabled = False
cmdCancel.Enabled = False
cmdAdd.Enabled = True
cmdQuery.Enabled = True
'需要判断当前出在那个选项卡上,然后分别处理
Select Case SSTab1.Tab
'家庭租户选项卡
Case 0
'又需要判断是从添加后取消还是修改后取消
'如果是从添加后取消
If addf = 1 Then
'如果当前Client表中有数据则显示第一条数据
If Not rs_client.EOF And Not rs_client.BOF Then
For i = 0 To 6
Text1(i).Text = rs_client.Fields(i)
Next i
If rs_client.Fields(7) = "男" Then
Combo1.ListIndex = 0
ElseIf rs_client.Fields(7) = "女" Then
Combo1.ListIndex = 1
End If
cmdEdit.Enabled = True
cmdDel.Enabled = True
cmdFirst.Enabled = True
cmdPrev.Enabled = True
cmdNext.Enabled = True
cmdLast.Enabled = True
'如果没有数据,则显示空
Else
For i = 0 To 6
Text1(i).Text = ""
Next i
cmdEdit.Enabled = False
cmdDel.Enabled = False
cmdFirst.Enabled = False
cmdPrev.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
End If
'如果是修改后取消,则恢复到修改前的数据
ElseIf addf = 0 Then
For i = 0 To 6
Text1(i).Text = rs_client.Fields(i)
Next i
If rs_client.Fields(7) = "男" Then
Combo1.ListIndex = 0
ElseIf rs_client.Fields(7) = "女" Then
Combo1.ListIndex = 1
End If
End If
'设置各个text框不可写
For i = 0 To 6
Text1(i).Enabled = False
Next i
'先设置ComboBox的默认值及不可改
Combo1.Enabled = False
'公司租户选项卡
Case 1
'又需要判断是从添加后取消还是修改后取消
'如果是从添加后取消
If addg = 1 Then
'如果当前GongSi表中有数据则显示第一条数据
If Not rs_client.EOF And Not rs_client.BOF Then
For i = 7 To 14
Text1(i).Text = rs_client.Fields(i)
Next i
cmdEdit.Enabled = True
cmdDel.Enabled = True
cmdFirst.Enabled = True
cmdPrev.Enabled = True
cmdNext.Enabled = True
cmdLast.Enabled = True
'如果没有数据,则显示空
Else
For i = 7 To 14
Text1(i).Text = ""
Next i
cmdEdit.Enabled = False
cmdDel.Enabled = False
cmdFirst.Enabled = False
cmdPrev.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
End If
'如果是修改后取消,则恢复到修改前的数据
ElseIf addg = 0 Then
For i = 7 To 14
Text1(i).Text = rs_client.Fields(i)
Next i
End If
'设置各个text框不可写
For i = 7 To 14
Text1(i).Enabled = False
Next i
End Select
End Sub
Private Sub cmdClose_Click()
Unload Me
End Sub
Private Sub cmdDel_Click()
'当单击删除记录时,需要弹出一个提示框,警告用户
Dim answer As String
answer = MsgBox("确定要删除吗?", vbYesNo, "")
'确实删除
If answer = vbYes Then
rs_client.Delete '删除当前记录
rs_client.Update '更新删除
MsgBox "成功删除!", vbOKOnly + vbExclamation, ""
Else
Exit Sub
End If
'删除之后,显示总信息条数需要减 1
Text2.Text = Val(Text2.Text) - 1
'删除当前记录后,需要显示下一条记录,如果删除的是最后一条记录,则显示上一条记录
'先移动rs_client记录到后一条
rs_client.MoveNext
If rs_client.EOF Then
rs_client.MovePrevious
'如果没有到记录首则显示该记录
If Not rs_client.BOF Then
'由于2个选项卡需要显示的项不同,需要分别处理显示记录
If SSTab1.Tab = 0 Then
'当前处于家庭租户选项卡
For i = 0 To 6
Text1(i).Text = rs_client.Fields(i)
Next i
If rs_client.Fields(7) = "男" Then
Combo1.ListIndex = 0
ElseIf rs_client.Fields(7) = "女" Then
Combo1.ListIndex = 1
End If
ElseIf SSTab1.Tab = 1 Then
'当前处于公司租户选项卡
For i = 7 To 14
Text1(i).Text = rs_client.Fields(i)
Next i
End If
'如果到记录首,则表格已经为空,置所有text框显示为空
ElseIf rs_client.BOF Then
If SSTab1.Tab = 0 Then
For i = 0 To 6
Text1(i).Text = ""
Next i
ElseIf SSTab1.Tab = 1 Then
For i = 7 To 14
Text1(i).Text = ""
Next i
End If
cmdFirst.Enabled = False
cmdPrev.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
End If
'如果删除的不是首尾记录,则显示当前记录即可
Else
If SSTab1.Tab = 0 Then
For i = 0 To 6
Text1(i).Text = rs_client.Fields(i)
Next i
If rs_client.Fields(7) = "男" Then
Combo1.ListIndex = 0
ElseIf rs_client.Fields(7) = "女" Then
Combo1.ListIndex = 1
End If
ElseIf SSTab1.Tab = 1 Then
For i = 7 To 14
Text1(i).Text = rs_client.Fields(i)
Next i
End If
End If
End Sub
Private Sub cmdEdit_Click()
'设置除保存和取消按钮外的其他按钮不可用
cmdAdd.Enabled = False
cmdEdit.Enabled = False
cmdDel.Enabled = False
cmdSave.Enabled = True
cmdCancel.Enabled = True
cmdFirst.Enabled = False
cmdPrev.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
cmdQuery.Enabled = False
If SSTab1.Tab = 0 Then
'需要设置除主键之外的text框可写
For i = 1 To 6
Text1(i).Enabled = True
Next i
Combo1.Enabled = True
addf = 0
ElseIf SSTab1.Tab = 1 Then
For i = 7 To 14
Text1(i).Enabled = True
Next i
addg = 0
End If
End Sub
Private Sub cmdFirst_Click()
'先移动rs_client记录到第一条
rs_client.MoveFirst
'同时需要设置相应按钮为不可用和不可用
cmdPrev.Enabled = False
cmdFirst.Enabled = False
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -