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: VB5
Expertise: Intermediate
Dec 4, 1999

Selecting an entire row in a ListView

The ListView control that comes with VB6 lets you select an entire row by setting its FullRowSelect property to True. If you are working with VB5 or you're using VB6 with the old version of the Microsoft Windows Controls this capability isn't avaible, but if you have installed the comctl32.dll version 4.70 or greater (shipped with IE3.x or greater), you can implement it by just setting a given ListView style bit. You can achieve that by sending the message LVS_EX_FULLROWSELECT to the control. Here's the routine to set this new property:

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal _
    hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, _
    lParam As Any) As Long
Const LVM_FIRST = &H1000
Const LVM_SETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 54
Const LVM_GETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 55
Const LVS_EX_FULLROWSELECT = &H20

Sub SetFullRowSelection(ByVal hWndListView, ByVal bFullRow As Boolean)
   SendMessageLong hWndListView, VM_SETEXTENDEDLISTVIEWSTYLE, _
       LVS_EX_FULLROWSELECT, ByVal CLng(bFullRow))
End Sub
This is an example of how you can use this routine:

' enable full row selecting
SetFullRowSelection ListView1.hwnd, True
' disable full row selecting
SetFullRowSelection ListView1.hwnd, False
Marco Bellinaso
 
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