Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Ejemplo De Uso De Eventos Y Propieades Del Raton
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Ejemplo De Uso De Eventos Y Propieades Del Raton 
 
Os dejo un video tutorial donde explico distintos eventos y propiedades del raton.



Link


En mi blog podeis descargaros el código completo: http://jsbsan.blogspot.com.es/2014/...ton-pulsar.html
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Uso De Eventos Y Propieades Del Raton 
 
Muy chulo, pero... ¿¿¿Federico Trillo???

       
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Uso De Eventos Y Propieades Del Raton 
 
Julio, recuerda usar un grupo para los cursores.  



Link


Al principio no caía quien era el tal Federico.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Miercoles, 12 Noviembre 2014, 21:46; editado 2 veces 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Uso De Eventos Y Propieades Del Raton 
 
Citar:
¿¿¿Federico Trillo???

Es una amigo que me deja usar su canal para subir los videos.

En mi canal ya no me dejan poner publicidad
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Uso De Eventos Y Propieades Del Raton 
 
Julio:

Siempre podrás crearte un usuario nuevo, ¿ no ?. Supongo que todos los que quieras.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Uso De Eventos Y Propieades Del Raton 
 
Hola!.

Repasando los eventos del ratón ya que los estoy aplicando a un ejemplo.  

Mouse.Button es obsoleto ?

Me pareció extraño que Julio no llegará a usar un Select Case para Mouse.Button y usase directamente Mouse.Left, Mouse.Right.
Lo cierto es que Mouse.Button es Integer y las constantes son Booleans.Parece que en la ayuda de gambas recomienda usar
las constantes booleanas.

Algo que si se puede modificar es esto del ejemplo:

Public Sub PictureBox1_MouseDown()
  
  LabelRatonInfo.text = "Boton apretado"
  
  If Mouse.Middle Then
    LabelRatonInfo.text = "Boton apretado, central"
  Endif
  If Mouse.Right Then
    LabelRatonInfo.text = "Boton apretado, derecho"
  Endif
  
  If Mouse.Left Then
    LabelRatonInfo.text = "Boton apretado, izquierdo"
  Endif  
End
 


Por

Public Sub PictureBox1_MouseDown()

  Dim queboton As String
  
  If Mouse.Middle Then
    queboton = "central"
    Print "central pulsado"
  Endif
  If Mouse.Right Then
    queboton = "derecho"    
  Endif
  
  If Mouse.Left Then
    queboton = "izquierdo"    
  Endif
  
  LabelRatonInfo.Text = "Botón apretado, " & queboton
  
End
 


Algo más.

Parece que el código original no tenía activa la propiedad tracking a True del PictureBox.

Y algo que me gustaría comentar que no me di cuenta hasta ahora. Que no me funciona el botón del centro como lo hace el izquierdo y el derecho,
como rueda si, pero como interruptor no. Uso Linux Mint. Nunca me fije en esto. ¿ Es cosa de Mate ?.

Ah, use Print en el centro para depurar el funcionamiento por la consola...ninguna respuesta.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Lunes, 08 Junio 2020, 23:22; editado 1 vez 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Uso De Eventos Y Propieades Del Raton 
 
Sobre los detalles del ratón:

sudo lsusb -v
 


Citar:

Bus 001 Device 002: ID 046d:c040 Logitech, Inc. Corded Tilt-Wheel Mouse
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x046d Logitech, Inc.
  idProduct          0xc040 Corded Tilt-Wheel Mouse
  bcdDevice           24.30
  iManufacturer           1 Logitech
  iProduct                2 USB-PS/2 Optical Mouse
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower               98mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      59
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
       bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0005  1x 5 bytes
        bInterval              10
Device Status:     0x0000
  (Bus Powered)


Al menos dice tres botones..

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Uso De Eventos Y Propieades Del Raton 
 
gracias julio por el ejemplo, aprendí que mouse.delta sirve para detectar el sentido que gira la rueda.

es que nunca he tenido hasta ahora de usar esa función.
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Uso De Eventos Y Propieades Del Raton 
 
Hola!.

Ahora mismo estoy en el equipo secundario y con este ratón va sin ningún problema. Es otro Logitech pero un modelo un poco mas antiguo.
Ayer comprobé que el ratón que no se reconoce, no funcionaba con el ejemplo, pero si podía hacer click en el botón de maximizar con el central...y funcionba...
no de la manera que hace el izquierdo, ( cuestión del tema ).

Con el problema de ayer con el mouse. He aprendido hasta crear este script en bash.

#!/bin/bash

# Comprobar si existe el comando en el sistema
# Vamos a comprobar y a usar el comando libinput para mostrar información del ratón

if [ -a "/usr/bin/libinput" ]; then
        echo "El comando libinput existe en su sistema."
        echo "El comando necesita permiso de super usuario para ejecución"    
        while IFS= read -r line
        do
            # Se comprueba si la línea de texto leída contiene la palabra Mouse
            if [[ "$line" == *"Mouse"* ]]; then
                echo "$line"
                while IFS= read -r line2        
                do
                    # Se comprueba que la línea de texto leída no es nula y tiene una longitud superior a cero
                    if [ -n "$line2" ]; then
                        echo "$line2"
                    else
                        # Esto parece que rompe los dos bucles
                        break
                    fi
                done
            fi
        done < <(sudo libinput list-devices)
else
        echo "El comando libinput no existe en su sistema."
        echo "Ejecute primero: sudo apt-get install libinput-tools"
fi
 


Así que aprendí el uso de los bucles, las condicionales, como pasar la salida de un comando....etc,etc.

Hasta mejorar el código de julio sobre los eventos del ratón.

Private botonusado As String

Public Sub Form_Open()
  
  Me.Center
  
  'Para mostrar las coordennadas sobre el PictureBox
  
  PictureBox1.Tracking = True
  
End

Public Sub PictureBox1_MouseMove()
  
  LabelCoord.text = "X: " & Str$(mouse.x) & " Y: " & Str$(Mouse.y)
  
End

Public Sub PictureBox1_MouseWheel()
  
  Dim haciadonde As String
  
  If Mouse.Delta > 0 Then
    haciadonde = "adelante"
  Else
    haciadonde = "atrás"
  Endif
  
  LabelRueda.Text = "Rueda del ratón, moviendola hacia  " & haciadonde
  
End

Public Sub PictureBox1_Leave()
  
  LabelCoord.text = "X: Y:"
  LabelRueda.text = ""
  LabelRatonInfo.text = ""
  Me.mouse = Mouse.Default
  
End

Public Sub PictureBox1_MouseDown()
  
  botonusado = Evento_MouseDown()
  
End

Public Function Evento_MouseDown() As String
  
  Dim queboton As String
  
  If Mouse.Middle Then
    queboton = "central"
    Print "central pulsado"
  Endif
  If Mouse.Right Then
    queboton = "derecho"    
  Endif
  
  If Mouse.Left Then
    queboton = "izquierdo"    
  Endif
  
  LabelRatonInfo.Text = "Botón apretado, " & queboton
  
  Return queboton
  
End

Public Sub PictureBox1_MouseUp()
  
  LabelRatonInfo.text = "Bóton soltado " & botonusado
  
End

Public Sub Cursores_Click()
  
  Me.Cursor = New Cursor(Last.Picture)
  Me.Mouse = Mouse.Custom
  
End
 


En el código original se repiten frases y líneas. Algo también que ocurre es que si tenemos el evento Mouse_Down() sabemos que botón
se ha pulsado, pero no se sabe que botón se dejo de pulsar al hacer Mouse_Up().

Estos eventos no tienen argumentos. Cree una variable  global que almacena que botón se ha pulsado y al crear el evento Mouse_Down()
que llame a una función que la devuelva.

En fin.

Eso es todo por hoy con los eventos del ratón...

¿ Y si se ha jodido la rueda del otro ratón.. ?. No descarto suciedad.
Pero desde luego no me gusta ese botón en ese ratón...es algo espartano.
En este es más cómodo...mmmm...


Nota. Si los ratones pudieran abollarse por los golpes que podamos darles, seriamos denunciados por malos tratos!.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron