允许用户删除文本框内容但不编辑它的方法?

时间:2016-02-08 15:43:38

标签: ms-access ms-access-2010

在我的表单上,我有一个显示生成的ID号的控件。我想允许用户删除此号码(生成新ID号码所必需的),但无法编辑或创建自己的号码。

到目前为止,我可以想到三个解决方法,没有一个是理想的,我想知道是否有人有更方便的解决方案?我的大部分问题都在于使表格易于使用,但很难意外/不小心删除身份证号。

解决方法#1:始终禁用控件,添加一个按钮以清除它。缺点:我在表格上已经有几个按钮,而且它有点拥挤,所以我想避免这样做。

解决方法#2:将文本框转换为没有列出选项且编辑设置为no的组合框,因此他们可以删除信息但不添加任何信息。缺点:控件上的下拉箭头可能会让用户误以为他们应该使用组合框,如果他们试图输入数据就需要给他们一个解释性的弹出消息,如果他们尝试输入数据他们已经遇到很多消息做禁止行动/确认删除记录/某些重要控制措施。

解决方法#3:允许他们在已有ID号码时生成新的ID号码,然后重置。缺点:再次,必须给他们消息互动以确认他们想要删除身份证号码,似乎比让他们删除它以确认他们不想要身份证号码更麻烦。担心接近消息疲劳意味着用户不会在阅读时删除现有的号码。

如果我找不到更好的解决方法,我可能会选择2号解决方案,因为对我来说这似乎是最不起作用的。有人有更好的建议吗?

1 个答案:

答案 0 :(得分:1)

使用文本框的BeforeUpdate事件:

 Cancel = Not IsNull(Me!SerialNumber.Value)
 If Cancel = True Then
      MsgBox "Number can be deleted but not edited."
 End If