0

我有一个数据输入表格。它的正确标签索引等,并且有三个下拉菜单,它们会随着输入事件自动展开。

无论我给用户多少关于使用 tab 键和 keboard 以及检查他们刚刚输入的内容的建议。他们仍然坚持使用鼠标从下拉菜单中选择值,问题是他们在匆忙中经常因使用鼠标而出错。

我希望能够强制用户使用键盘输入这些字段。

下拉列表对于用户查看字段的适当值是必要的,因为这些值会根据之前的选择而有所不同。

我已经尝试过尝试 onclick 事件,但无济于事。有没有办法我可以做到这一点?

我正在使用 access 2007 很多用户都有 access 2003。

4

1 回答 1

2

根据您的评论,我将采取两种不同方法中的一种。

如果您的用户对代码真的很满意,并且根据他们之前的选择知道他们应该使用哪些代码,那么只需使用文本框而不是组合框。您仍然可以在 Form_BeforeUpdate 事件或单个控件的 _BeforeUpdate 事件中放置一些验证代码。

如果用户不是很舒服,那么我建议您在组合框中的第一个字段是代码的描述,而不是代码本身。因此,他们不是从 101、102、103 中进行选择,而是从“小”、“中”、“大”或这些代码实际适用的任何代码中进行选择。如果您仍想显示代码本身,您可以使用单独的禁用文本框来实现。


现在回答你的实际问题。作为记录,我强烈建议不要使用这种方法。我可以阻止用户使用鼠标选择组合框的最简单方法是添加一个覆盖组合框的透明按钮。

为此,请在组合上绘制一个常规命令按钮。设置透明 = 是,可见 = 是,启用 = 是,制表位 = 否。

当用户现在单击组合时,他们实际上将单击透明按钮,并且不会发生任何事情。他们能够进入控件的唯一方法是从相邻控件中按标签或使用热键(通过附加标签中的“&”)。

一旦他们通过 Tab 进入控件并且您的代码强制下拉,他们仍然可以使用鼠标选择一个选项。但是通过强迫他们最初使用键盘,这将使他们更有可能只是坚持使用键盘。

再一次——我不能强调这一点——我认为这是一个可怕的、可怕的、不好的主意。请不要使用这种方法。但是你问了一个技术问题,这个网站就是提供技术答案,所以你去...

于 2013-02-05T15:46:09.320 回答