显示表单控件的Enabled属性的问题

时间:2012-03-15 14:57:08

标签: ms-access

我有一个表单,其中许多控件都是灰色的(它们的Enabled属性= False),直到填充了相关的控件。我有两个问题。

  1. 控件输入了文本,它的On Update事件设置关联控件的Enabled属性= True表示数据输入。如果用户然后按下撤消,则文本将从控件中移出,但关联的控件仍保持启用状态。如何在控件中不再有数据时将其恢复为Enabled = False?

  2. 当用户保存记录并移动到下一条记录以继续数据输入时,表单的状态不一致。在某些地方,控件显示为在上一条记录的末尾,因此如果在数据输入过程中启用了控件,则它们仍会在新记录上启用。但是,如果您使用表单查看保存的记录,即使它们包含已保存的数据,某些控件也会恢复为Enabled = False。

  3. 那么如何确保新记录的控件处于Enabled的默认设置,但是当查看已经输入的记录时,它们对于该记录是否正确?

2 个答案:

答案 0 :(得分:0)

您使用的是哪些活动?应根据需要在当前事件和其他事件中设置控件。不要忘记你可以这样说:

Me.txtText.Enable = (Me.txtOther = "abc")

编辑重新评论

If IsNull(Me.MyCombo) Then
     Me.MyText = Null
End If

或者

''Relevant column number starting from zero
Me.MyText = Me.MyCombo.Column(0)

答案 1 :(得分:0)

我认为您可能需要为文本框使用“On Lost Focus”事件,并在此时检查是否包含任何数据,例如:

Private Sub Text0_LostFocus()

    If Text0 & "" = "" Then
        Text0.Enabled = False
    Else
        Text0.Enabled = True
    End If

End Sub