Como extender un evento

Hola
En el componente list view el ítem tiene un evento que es
Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
End Sub
así cada vez que hago click hace algo
Pero este evento no envía en sus parámetros que botón del mouse se hizo click a diferencia de este método del listview
Private Sub ListView1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
End Sub
que manda el parametro button 1 si es click izquierdo y 2 si es el derecho
Entonces lo que necesito es agregar un evento al ítem del list view
que me mande como parámetro el botón del mouse pulsado
que quedaría así
Private Sub ListView1_ItemClick(button as integer, ByVal Item As MSComctlLib.ListItem)
End Sub
¿Cómo se puede hacer esto con visual basic 6.0?

2 respuestas

Respuesta
1
Pues sencillamente no se puede hacer, VB 6 no permite "extender" eventos. En el caso que me comentas, lo más sencillo es incluir una variable a nivel de módulo en la que guardar el botón con el que se hizo click, y consultar esa variable en el evento ItemClick, algo así:
Dim mButton as Integer
Private Sub ListView1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
mButton=Button
End Sub
Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
if mButton=1 then
ElseIf mButton=2 then
End If
End Sub
Respuesta
1
Sugiero que en el evento del mousedown se tenga una variable a nivel de formulario que se cambie de acuerdo al botón seleccionado y en el evento click del listview se realice todo el procedimiento de trabajo que se requiera y se utilice la variable global del módulo para verificar que proceso se debe seguir.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas