+ -
当前位置:首页 → 问答吧 → vb写的程序点击窗口没反应

vb写的程序点击窗口没反应

时间:2011-11-11

来源:互联网

我在vb6.0里写了一个学生通讯录的程序,代码如下:
Private Sub cmdAdd_Click()
On Error Resume Next
cmdDel.Enabled = Not cmdDel.Enabled
cmdEdit.Enabled = Not cmdEdit.Enabled
cmdFirst.Enabled = Not cmdFirst.Enabled
cmdNext.Enabled = Not cmdNext.Enabled
cmdPre.Enabled = Not cmdPre.Enabled
cmdLast.Enabled = Not cmdLast.Enabled
cmdSearch.Enabled = Not cmdSearch.Enabled
Combo1.Enabled = Not Combo1.Enabled
txtSearch.Enabled = Not txtSearch.Enabled

If cmdAdd.Caption = "添加" Then
cmdAdd.Caption = "确定"
Data1.Recordset.AddNew
txtName.SetFocus
Else
cmdAdd.Caption = "添加"
Data1.Recordset.Update
Data1.Recordset.MoveLast
End If

End Sub

Private Sub cmdCancel_Click()
On Error Resume Next
cmdAdd.Caption = "添加"
cmdEdit.Caption = "修改"
cmdFirst.Enabled = True
cmdNext.Enabled = True
cmdPre.Enabled = True
cmdLast.Enabled = True
cmdSearch.Enabled = True
cmdAdd.Enabled = True
Combo1.Enabled = True
txtSearch.Enabled = True
Data1.UpdateControls
Data1.Recordset.MoveNext
End Sub

Private Sub cmdDel_Click()
On Error Resume Next
Data1.Recordset.Delete
Data1.Recordset.MoveNext
If Data1.Recordset.EOF Then
Data1.Recordset.MoveLast
End If
End Sub

Private Sub cmdEdit_Click()
On Error Resume Next
cmdDel.Enabled = Not cmdDel.Enabled
cmdFirst.Enabled = Not cmdFirst.Enabled
cmdNext.Enabled = Not cmdNext.Enabled
cmdPre.Enabled = Not cmdPre.Enabled
cmdLast.Enabled = Not cmdLast.Enabled
cmdSearch.Enabled = Not cmdSearch.Enabled
cmdAdd.Enabled = Not cmdAdd.Enabled
Combo1.Enabled = Not Combo1.Enabled
txtSearch.Enabled = Not txtSearch.Enabled

If cmdEdit.Caption = "修改" Then
cmdEdit.Caption = "确定"
Data1.Recordset.Edit
txtName.SetFocus
Else
cmdEdit.Caption = "修改"
Data1.Recordset.Update
End If

End Sub

Private Sub cmdFirst_Click()
On Error Resume Next
Data1.Recordset.MoveFirst
End Sub

Private Sub cmdLast_Click()
On Error Resume Next
Data1.Recordset.MoveLast
End Sub

Private Sub cmdNext_Click()
On Error Resume Next
Data1.Recordset.MoveNext
If Data1.Recordset.EOF Then
Data1.Recordset.MoveFrist
End If
End Sub

Private Sub cmdPre_Click()
On Error Resume Next
Data1.Recordset.MovePrevious
If Data1.Recordset.BOF Then
MsgBox "已经是第一条记录!"
Data1.Recordset.MoveFirst
End If
End Sub

Private Sub cmdSearch_Click()
On Error Resume Next
If Combo1.Text = "学号" Then
'Data1.RecordSource = "Select * From 学生表 Where 专业 = ' " & Trim(txtSearch) & " ' "
'Data1.Refresh
End If
If Combo1.Text = "姓名" Then
'Data1.RecordSource = "Select * From 学生表 Where 专业 = ' " & Trim(txtSearch) & " ' "
'Data1.Refresh
End If
If Data1.Recordset.NoMatch Then
MsgBox "无此记录!"
End If
End Sub

Private Sub Combo1_Change()
On Error Resume Next
If Combo1.Text = "自定义查询" Then
Form2.Show
End If
End Sub

Private Sub Combo1_DropDown()
On Error Resume Next
Combo1.Clear
Combo1.AddItem "姓名"
Combo1.AddItem "学号"
Combo1.AddItem "自定义查询"
End Sub

'Private Sub Data1_Reposition()
'On Error Resume Next
'Data1.Caption = Data1.Recordset.AbsolutePosition + 1
'End Sub

Private Sub Form_Load()
On Error Resume Next
cmdFirst.Enabled = True
cmdNext.Enabled = True
cmdPre.Enabled = True
cmdLast.Enabled = True
cmdSearch.Enabled = True
cmdAdd.Enabled = True
Combo1.Enabled = True
txtSearch.Enabled = True
cmdCancel.Enabled = True
cmdDel.Enabled = True
End Sub

Private Sub txtSearch_Change()
On Error Resume Next
If txtSearch.Text <> "" Then
MsgBox "查询条件不能为空!"
txtSearch.SetFocus
End If
If Combo1.Text = "学号" And _
Not IsNumeric(txtSearch.Text) Then
MsgBox "学号查询不允许非数字字符出现!"
txtSearch.SetFocus
End If
If Combo1.Text = "姓名" And _
IsNumeric(txtSearch.Text) Then
MsgBox "姓名查询不允许出现数字字符!"
txtSearch.SetFocus
End If
End Sub

运行时出现点击窗口时没反应的现象,系统也没报错,也没死循环。我是初学者,希望哪位高手指点一下,谢谢了

作者: xiluoduyu   发布时间: 2011-11-11

直接上源码啦 这样看的累 (对了 论坛可以上传附件不??)
  如果直接上传源码 别人调试 或者看这才比较统一看出是否有错误。。。

作者: hipxh   发布时间: 2011-11-11

运行时出现点击窗口时没反应的现象?
帮你试了一下。没有出现你说的这种现象。
就是你写的程序感觉有点奇怪。

作者: luobaoline   发布时间: 2011-11-11

先将所有的On Error Resume Next注释掉,运行一下看出什么错吧。

作者: zhao4zhong1   发布时间: 2011-11-11