Microsoft Access如何在失去焦点时停止滚动的文本字段从返回到顶部(如滚动到顶部)

时间:2018-12-08 06:00:33

标签: ms-access access-vba scrollbar ms-access-2016

我正在Win 10中使用Access 2016,所有内容均已更新且为最新。我有一个带有带有垂直滚动条的标准Access TextBox的表单。除非我向下滚动然后单击该字段以从其他来源中读取信息,否则一切都很好,因为滚动的文本会向右滚动回到顶部,并且我必须向下滚动到原来的位置才能恢复工作。这浪费时间并且使我的思路偏离轨道。

我看不到任何可锁定“插入符号”或禁用此烦人行为的属性或方法。我也在所有我能想到的地方进行了研究,似乎没人知道该怎么做。

我什至建立了自己的滚动按钮,除了添加或删除文本时试图跟踪文本位置变得很复杂之外,它的工作效果非常好。因此,如果有人在VBA / VB6中具有良好的自定义滚动条,请查看。

感谢您的时间和建议。我很感激。

在KC中肯特。

1 个答案:

答案 0 :(得分:0)

设置并恢复所选位置:

Option Compare Database
Option Explicit

Private LastPosition    As Long 

Private Sub YourTextbox_LostFocus()

    LastPosition = Me!YourTextbox.SelStart

End Sub

Private Sub YourTextbox_GotFocus()

    Me!YourTextbox.SelStart = LastPosition
    Me!YourTextbox.SelLength = 0

End Sub

Private Sub Form_Current()

     ' Reset last position.
     LastPosition = 0

End Sub

它将滚动文本框以使从左到顶的行可见。