在另一个子表单中编辑数据时禁用子表单
Posted
技术标签:
【中文标题】在另一个子表单中编辑数据时禁用子表单【英文标题】:Disable a subform while editing data in another subform 【发布时间】:2019-08-27 14:23:01 【问题描述】:我有两个子表单,第一个是列表,第二个是第一个子表单中所选记录的详细记录。
当我在详细信息子表单中选择编辑按钮时,我想锁定列表表单。
我试过了:forms!master!subformList.enabled=false
。
注意:
_D
是详细的子表单。
_L
是列表子表单。
cmb_Edit
是位于详细信息子表单上的编辑/保存按钮。
Private Sub EnableFutureForm(EF)
Select Case EF
Case 1 'SubForm Detail is Locked Down
FuturePaint (False)
Forms!FrmFutureWork!FrmFutureWork_D!cmb_Edit.Caption = "Edit"
Forms!FrmFutureWork!FrmFutureWork_L.Form.Enabled = True
Case 2 'SubForm Detail is Opened up
FuturePaint (True)
Forms!FrmFutureWork!FrmFutureWork_D!cmb_Edit.Caption = "Save"
Forms!FrmFutureWork!FrmFutureWork_L.Form.Enabled = False
Forms!FrmFutureWork!FrmFutureWork_D!cmb_TRMM.SetFocus
End Select
End Sub
我希望列表子表单不响应任何点击,而 Form_Click
继续工作。
【问题讨论】:
【参考方案1】:您可以通过设置 forms 属性来禁用事件。
对于Form_Click
,它是Form.OnClick 属性。
'disable event
Forms!FrmFutureWork!FrmFutureWork_L.Form.OnClick = vbNullString
'enable event
Forms!FrmFutureWork!FrmFutureWork_L.Form.OnClick = "[Event Procedure]"
或者您可以在事件代码中添加检查:
Private Sub Form_Click()
If Forms!FrmFutureWork!FrmFutureWork_L.Enabled then
' Actions on subform-control (not the form!) enabled
Else
' Action on subform-control disabled
End IF
End Sub
【讨论】:
以上是关于在另一个子表单中编辑数据时禁用子表单的主要内容,如果未能解决你的问题,请参考以下文章