devxlogo

SetTreeViewFirstVisibleNode – Set the first visible node in a TreeView control

SetTreeViewFirstVisibleNode – Set the first visible node in a TreeView control

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal _    hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _    lParam As Any) As LongPrivate Const TV_FIRST = &H1100Private Const TVM_GETNEXTITEM = (TV_FIRST + 10)Private Const TVM_SELECTITEM = (TV_FIRST + 11)Private Const TVGN_CARET = 9Private Const TVGN_FIRSTVISIBLE = &H5' set the first visible Node of a TreeView controlSub SetTreeViewFirstVisibleNode(ByVal TV As TreeView, ByVal Node As Node)    Dim hItem As Long    Dim selNode As Node        ' remember the node currently selected    Set selNode = TV.SelectedItem    ' make the Node the select Node in the control    Set TV.SelectedItem = Node    ' now we can get its handle    hItem = SendMessage(TV.hWnd, TVM_GETNEXTITEM, TVGN_CARET, ByVal 0&)    ' restore node that was selected    Set TV.SelectedItem = selNode    ' make it the fist visible Node    SendMessage TV.hWnd, TVM_SELECTITEM, TVGN_FIRSTVISIBLE, ByVal hItemEnd Sub

devx-admin

Share the Post: