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

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.


Tip of the Day
Language: Visual Basic
Expertise: Beginner
Aug 20, 1999

WEBINAR:

On-Demand

Application Security Testing: An Integral Part of DevOps


Determine Which ListView Column Was Checked

When using the ListView control in list mode (Listview.View = lvwList), no property indicates which column the user clicked on within the selected row. The ListView's HitTest method returns only a reference to the ListItem the user clicked on, not the specific subitem. Use the SendMessage API function in the ListView's MouseUp or MouseDown event to provide this information:

 
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 LVM_SUBITEMHITTEST As Long = 4153

Private Type POINTAPI
	X As Long
	Y As Long
End Type

Private Type LVHITTESTINFO
	pt As POINTAPI
	lngFlags As Long
	lngItem As Long
	lngSubItem As Long
End Type

Private Sub ListView1_MouseUp(Button As Integer, _
	Shift As Integer, X As Single, Y As Single)
	Dim hti As LVHITTESTINFO
	Dim lngRet As Long
	hti.pt.X = X / Screen.TwipsPerPixelX
	hti.pt.Y = Y / Screen.TwipsPerPixelY
	lngRet = SendMessage(ListView1.hWnd, _
		LVM_SUBITEMHITTEST, 0&, hti)
	Debug.Print "Row=" & hti.lngItem,
	Debug.Print "Col=" & hti.lngSubItem
End Sub
Brian Pursley
 
Comment and Contribute

 

 

 

 

 


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

 

 

Sitemap
×
We have made updates to our Privacy Policy to reflect the implementation of the General Data Protection Regulation.
Thanks for your registration, follow us on our social networks to keep up-to-date