我敢肯定,这是很简单的,但我不能找到它。 在Access窗体的关闭事件,我怎么能取消关闭窗体? 我有一个测试,计算在一个表中的记录。 如果表中有记录,我要问用户是否要关闭或回去和他们一起工作。 那么,如何取消关闭事件?
Answer 1:
您可以使用Unload事件:
GlobalVar ButtonClicked
Private Sub Form_Open(Cancel As Integer)
ButtonClicked = False
End Sub
Private ClickMe_Click(Cancel As Integer)
ButtonClicked = True
End Sub
Private Sub Form_Unload(Cancel As Integer)
If Not ButtonClicked Then
Cancel = True
End if
End Sub
数据库对象的事件顺序
Answer 2:
学习和尝试这个代码,它为我工作。 替换为您选择的名称必需的变量名。 在窗体的Form_Unload事件中的代码粘贴。 警告!:在执行此操作后,你会发现它很难访问您的形式设计和布局视图
Private Sub Form_Unload(Cancel As Integer)
userresponse = MsgBox("Are you sure you want close? All your work wouldn't be saved", vbYesNo, "Database Information")
Select Case userresponse
Case 6
Cancel = False
'this line opens another form in my own case
DoCmd.OpenForm "EngMenu"
Case 7
Cancel = True
'this line keeps my own form open in my own case
DoCmd.OpenForm "UpdateForm"
Case Else:
MsgBox "You are not allowed to perform this operation", vbInformation, "Database Information"
End Select
End Subenter code here
Answer 3:
使用“Form_BeforeUpdate(取消作为整数)”事件,并设置取消为True。
请注意,你根本就不能,除非你添加一些逻辑来实际允许更新数据库,收于一切。
文章来源: How to cancel a form close in Close Event?