鼠标滚动 1 个主窗体和 2 个子窗体 MS ACCESS

Posted

技术标签:

【中文标题】鼠标滚动 1 个主窗体和 2 个子窗体 MS ACCESS【英文标题】:Mouse Scroll with 1 Main Form and 2 subforms MS ACCESS 【发布时间】:2015-04-09 16:31:34 【问题描述】:

我有一个带有 2 个子表单的 MS ACCESS 2007 表单。我在主表单中有一些字段作为文本,在第二个表单中有一些作为文本,在第三个表单中有很多作为各种内容。

我对这些子表单的问题是,当我在主表单中输入数据时,我的鼠标滚动可以很好地滚动到表单底部。当我在子窗体 1 或 2 中时,我的鼠标滚动停止工作以向下滚动到主窗体的底部。我尝试查找禁用鼠标滚动,但这已经为 MS Access 2007 中的单个表单视图预设。我只希望鼠标滚动仅适用于一般表单,即使您正在向子表单 1 和 2 输入数据。

【问题讨论】:

【参考方案1】:

我知道你的帖子已经有一段时间了。但是我遇到了几乎相同的问题并想通了,所以我想我还是会发布答案:

如果您在主窗体中创建了一个额外的文本框(确保其属性 visible 设置为 TRUE),则将此文本框放在任何其他控件的后面,以便用户觉得没有文本框。

现在在主窗体的详细信息选择的属性中创建一个 onClick 事件(当您单击主窗体中的任意位置时会发生此事件)。在这种情况下,使用 SetFocus 方法重定向到之前创建的文本框。代码如下所示:

[Forms]![MAINFORM]!TEXTBOX.SetFocus

如果您单击表单(在子表单之外),文本框会自动被选中,这样您就可以滚动主表单。用户看不到文本框,因此似乎他/她选择了主窗体。

希望对您有所帮助!

【讨论】:

实际上,当表格太大而TEXTBOX在显示器屏幕后面时,当您将焦点放在TEXTBOX上时,表格会跳起来。还有更多可用的解决方案。将 TEXTBOX 放在高度和宽度等于 0 的表单上,并在 Detail onMouseDown 事件中输入以下代码:TEXTBOX.Left = X;文本框。顶部 = Y; TEXTBOX.SetFocus;

以上是关于鼠标滚动 1 个主窗体和 2 个子窗体 MS ACCESS的主要内容,如果未能解决你的问题,请参考以下文章

父子窗体滚动条支持鼠标滚轮移动

如何遍历所有子窗体 MS Access VBA

python tkinter窗体内容超出窗体,如何设置通过鼠标滚动显示完整内容?

单击控件后,C#Windows窗体/用户控件不能用鼠标滚轮滚动[复制]

循环访问 MS Access 子窗体并获取列可见性

Cocos2D实现上下滚动式状态窗体