Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: VB4/32,VB5,VB6
Expertise: Intermediate
Sep 18, 1999

GetTreeViewFirstVisibleNode - Retrieve the first visible node in a TreeView

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

Private Const TV_FIRST = &H1100
Private Const TVM_GETNEXTITEM = (TV_FIRST + 10)
Private Const TVM_SELECTITEM = (TV_FIRST + 11)
Private Const TVGN_CARET = 9
Private Const TVGN_FIRSTVISIBLE = &H5

' Return the first visible node of a TreeView

Function GetTreeViewFirstVisibleNode(ByVal TV As TreeView) As Node
    Dim hItem As Long
    Dim selNode As Node
    
    ' remember the node currently selected
    Set selNode = TV.SelectedItem
    ' get the handle of the first visible Node
    hItem = SendMessage(TV.hWnd, TVM_GETNEXTITEM, TVGN_FIRSTVISIBLE, ByVal 0&)
    ' make it the selected Node
    SendMessage TV.hWnd, TVM_SELECTITEM, TVGN_CARET, ByVal hItem
    ' return the result as a Node object
    Set GetTreeViewFirstVisibleNode = TV.SelectedItem
    ' restore node that was selected
    Set TV.SelectedItem = selNode
    
End Function

Francesco Balena
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date