Find all our projects in development below.
All source code is GNU General Public License (GPL)
Browsing ListViewStylesMod.bas (2.04 KB)
Attribute VB_Name = "ListViewStylesMod"
Private Const LVM_FIRST = &H1000
Private Const LVM_GETHEADER = (LVM_FIRST + 31)
Private Const LVM_GETEXTENDEDLISTVIEWSTYLE = (LVM_FIRST + 55)
Private Const LVM_SETEXTENDEDLISTVIEWSTYLE = (LVM_FIRST + 54)
Private Const LVS_EX_FULLROWSELECT = &H20
Private Const LVS_EX_ONECLICKACTIVATE = &H40
Private Const LVS_EX_UNDERLINEHOT = &H800
Private Const HDS_BUTTONS = &H2
Private Const GWL_STYLE = (-16)
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
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
Private Declare Function SendMessageLong Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Function LV_UnderlineHot(ListViewObj As ListView) As Long
SendMessageLong ListViewObj.hWnd, LVM_SETEXTENDEDLISTVIEWSTYLE, 0&, SendMessageLong(ListViewObj.hWnd, LVM_GETEXTENDEDLISTVIEWSTYLE, 0&, 0&) Xor LVS_EX_ONECLICKACTIVATE
LV_UnderlineHot = SendMessageLong(ListViewObj.hWnd, LVM_SETEXTENDEDLISTVIEWSTYLE, 0&, SendMessageLong(ListViewObj.hWnd, LVM_GETEXTENDEDLISTVIEWSTYLE, 0&, 0&) Xor LVS_EX_UNDERLINEHOT)
End Function
Public Function LV_FlatColumnHeaders(ListViewObj As ListView) As Long
LV_FlatColumnHeaders = SetWindowLong(SendMessageLong(ListViewObj.hWnd, LVM_GETHEADER, 0, ByVal 0&), GWL_STYLE, GetWindowLong(SendMessageLong(ListViewObj.hWnd, LVM_GETHEADER, 0, ByVal 0&), GWL_STYLE) Xor HDS_BUTTONS)
End Function
Public Function LV_FullRowSelect(ListViewObj As ListView) As Long
LV_FullRowSelect = SendMessageLong(ListViewObj.hWnd, LVM_SETEXTENDEDLISTVIEWSTYLE, 0&, SendMessageLong(ListViewObj.hWnd, LVM_GETEXTENDEDLISTVIEWSTYLE, 0&, 0&) Xor LVS_EX_FULLROWSELECT)
End Function
Download ListViewStylesMod.bas