开发者

Linking scroll bars on adjacent listboxes together

i use VB6 enterprize edition. How would one go about linking the vscroll bars for adjacent listboxes so that, if one is scrolled, the two others slide up and down too? 开发者_如何学运维The object is to keep information displayed in the lists side by side. I have tried setting the listindex property of the two other lists equal to the first one's listindex using the click event. It works after a fashion, but is a less than ideal solution. If one clicks on an item in the first list, the listindex for the other two do appear on the screen, but they are not really linked or displayed side by side. I noticed a scroll event but cannot find any matarial on using this event in any of my VB books. Any help would be appreciated.


Handle the scroll event for the listboxes. This will fire whenever the listbox is scrolled.

In the event handler, set the TopIndex property for the other listboxes equal to the TopIndex of the scrolled listbox.

I found this code for 2 listboxes on a newsgroup post. A module-level variable is used to prevent recursion: setting the TopIndex from code might fire the Scroll event again.

Dim m_NoScroll As Boolean ''module-level flag var 

Private Sub List1_Scroll() 
    If Not m_NoScroll Then 
        m_NoScroll = True 
        List2.TopIndex = List1.TopIndex 
        m_NoScroll = False 
    End If 
End Sub  

Private Sub List2_Scroll() 
    If Not m_NoScroll Then 
        m_NoScroll = True 
        List1.TopIndex = List2.TopIndex 
        m_NoScroll = False 
    End If 
End Sub 
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜