vb中怎么用语句调用TreeView的竖向滚动条的向上/向下单击事件?

zhanglan1999 2005-10-14 09:45:12
这个问题本该放到控件类去,但我今天进不去,CSDN总提示:文本内容中发现无效字符。只好到这里了。
我在触摸屏程序中使用TREEVIEW,节点多时出现竖向滚动条,我以前试过在触摸屏中用手指控制滚动条的上下单击很费劲,想在窗体上放置两“上”、“下”按钮,例如当点击“下”时就用代码控制treeview的竖向滚动条向下滚动一次,向上亦然。
怎么实现呢?
...全文
226 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
fishmans 2005-10-14
  • 打赏
  • 举报
回复
或者向treeview
sendkeys "{down}"
sendkeys "{up}"
yas 2005-10-14
  • 打赏
  • 举报
回复
Node.EnsureVisible
fishmans 2005-10-14
  • 打赏
  • 举报
回复
用nodes的selected方法啊
zlt982001 2005-10-14
  • 打赏
  • 举报
回复
SendMessage 可以,不过要获得滚动条得句柄很难
winehero 2005-10-14
  • 打赏
  • 举报
回复
楼上可以,SendMessage就行
northwolves 2005-10-14
  • 打赏
  • 举报
回复
sendmessage:

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

Const WM_VSCROLL = &H115

Private Const SB_LINEDOWN = 1

Private Const SB_LINEUP = 0

Private Const SB_PAGEDOWN = 3

Private Const SB_PAGEUP = 2

Private Const SB_ENDSCROLL = 8

Private Const SB_BOTTOM = 7

Private Const SB_TOP = 6
Private Sub Command1_Click()
SendMessage TreeView1.hWnd, WM_VSCROLL, SB_LINEUP, 5& 'upword 5 lines
End Sub

Private Sub Command2_Click()
SendMessage TreeView1.hWnd, WM_VSCROLL, SB_LINEDOWN, 5& ' downword 5 lines
End Sub

Private Sub Command3_Click()
SendMessage TreeView1.hWnd, WM_VSCROLL, SB_PAGEUP, 1& ' 1 pageup

End Sub

Private Sub Command4_Click()
SendMessage TreeView1.hWnd, WM_VSCROLL, SB_PAGEDOWN, 1& '1 pagedown

End Sub

Private Sub Command5_Click()
SendMessage TreeView1.hWnd, WM_VSCROLL, SB_TOP, 0& ' to top

End Sub

Private Sub Command6_Click()
SendMessage TreeView1.hWnd, WM_VSCROLL, SB_BOTTOM, 0& ' to bottom

End Sub

Private Sub Form_Load()
For i = 1 To 1000
TreeView1.Nodes.Add , , , i
Next
End Sub

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧