如何检测滚动条是否位于richtextbox的末尾(vb.net)

我的问题是这样的:如何检测滚动条是否位于richtextBox的末尾?

编辑:当我说最后我的意思是完全滚动到底部,而不是其他任何地方.

查看 GetScrollRangeGetScrollPos API …
Private Const SBS_HORZ = 0
Private Const SBS_VERT = 1

<DllImport("user32.dll")> _
Public Function GetScrollRange(ByVal hWnd As IntPtr,ByVal nBar As Integer,_
                               ByRef lpMinPos As Integer,_
                               ByRef lpMaxPos As Integer) As Boolean
End Function

<DllImport("user32.dll")> _
Public Function GetScrollPos(ByVal hWnd As Integer,_
                             ByVal nBar As Integer) As Integer
End Function

// ...

Dim scrollMin as Integer = 0
Dim scrollMax as Integer = 0

If(GetScrollRange(rtb.Handle,SBS_VERT,scrollMin,scrollMax) Then
   Dim pos as Integer = GetScrollPos(rtb.Handle,SBS_VERT)

   // Detect if they're at the bottom
EndIf

笔记:

要确定滚动条是否可见,请调用GetWindowLong并检查WS_VSCROLL

要确定滑块可以达到的最大值,请调用GetScrollInfo;我认为最大值是

scrollMax - largeChange + 1

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...