我有一个窗体FORM1,上面有一个TEXT文本框,一个COMMAND按钮,代码如下
Dim WithEvents rs As ADODB.RecordsetPrivate Sub COMMAND_Click()
If Not rs.EOF Then rs.MoveNext
End SubPrivate Sub Form_Load()
Set rs = New ADODB.Recordset
rs.Open "select id,name from unit", Cn, adOpenKeyset, adLockOptimistic
Set Text.DataSource = rs
Text.DataField = "name"
End SubPrivate Sub Form_Unload(Cancel As Integer)
rs.Close
End SubPrivate Sub rs_WillChangeField(ByVal cFields As Long, Fields As Variant, adStatus _
As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
if msgbox("是否保存您的修改!",vbyesno)=vbNo then
adStatus = adStatusCancel
end if
End Sub
我想实现的效果是,当我修改TEXT中的内容后,按COMMAND到下一记录时,提示是否保存修改,选"否"则不保存到下一条记录,选"是"则保存后到下一条记录,但我的代码有些问题,请指导
Dim WithEvents rs As ADODB.RecordsetPrivate Sub COMMAND_Click()
If Not rs.EOF Then rs.MoveNext
End SubPrivate Sub Form_Load()
Set rs = New ADODB.Recordset
rs.Open "select id,name from unit", Cn, adOpenKeyset, adLockOptimistic
Set Text.DataSource = rs
Text.DataField = "name"
End SubPrivate Sub Form_Unload(Cancel As Integer)
rs.Close
End SubPrivate Sub rs_WillChangeField(ByVal cFields As Long, Fields As Variant, adStatus _
As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
if msgbox("是否保存您的修改!",vbyesno)=vbNo then
adStatus = adStatusCancel
end if
End Sub
我想实现的效果是,当我修改TEXT中的内容后,按COMMAND到下一记录时,提示是否保存修改,选"否"则不保存到下一条记录,选"是"则保存后到下一条记录,但我的代码有些问题,请指导
解决方案 »
- 二进制文件处理又出现问题了?
- 各位贤贤的歌迷们,快快来,MysticBoy建里QQ群一个,快来加啦!而且散分哦!!!!!!!!!!
- 请问如何用data控件关闭一个数据库中的表
- 打开打印机对话框,得到首页和末页,但怎么“将数据发往打印机”?代码在这
- 如何实现vb+mssql的备份和恢复问题,高分请进
- 怎么动态增加控件数组,并且这些控件都可以相应事件?
- treeview,愁人的一个小问题!!!
- (在线)在VB中如何得到word中的Normal.dot绝对路径;还有就是如何知道office的安装路径
- 如何清除所有text控件组
- 我没分了希望大家帮帮我IE的NewWindow2事件中???
- 关于data控件与MSflexgrid控件
- 菜鸟的问题
rs.update
If Not rs.EOF Then rs.MoveNext
End Sub
加了Rs.update 跟没加是一样的效果
if text1.datachanged then
msgbox ....
end if
End Sub
Private Sub COMMAND_Click()
if (rs.status and AdRecModified) = AdRecModified then
msgbox ....
end if
End Sub如果不在command_click里面判断,可以在rs_willmove事件里面判断,
反正跟changefield没关系