可以使用 Dirty 属性来决定当前记录自从上次保存之后是否修改过。例如,可能要询问用户是否保存对这些记录的更改,如果选择“否”,所做的更改则不会保存。Boolean 类型,可读/写。
expression.Dirty
expression 必需。返回“应用于”列表中的一个对象的表达式。
Dirty 属性使用以下设置:
设置 |
Visual Basic |
说明 |
True |
True |
当前记录已更改。 |
False |
False |
当前记录未更改。 |
此属性可以使用宏或 Visual Basic 读取或设置。
如果记录已保存,Microsoft Access 将 Dirty 属性设置为 False;如果用户更改记录,则该属性将设置为 True。
以下示例在数据更改时将 btnUndo 按钮设为有效。UndoEdits( ) 子程序从文本框控件的 AfterUpdate 事件中调用。单击有效的 btnUndo 按钮会使用 OldValue 属性还原控件值。
Sub UndoEdits()
If Me.Dirty Then
Me!btnUndo.Enabled = True ' Enable button.
Else
Me!btnUndo.Enabled = False ' Disable button.
End If
End Sub
Sub btnUndo_Click()
Dim ctlC As Control
' For each control.
For Each ctlC in Me.Controls
If ctlC.ControlType = acTextBox Then
' Restore Old Value.
ctlC.Value = ctlC.OldValue
End If
Next ctlC
End Sub