Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: predator en 13 de Mayo de 2008, 10:32:18 PM

Título: [VB 6.0]presionando un boton
Publicado por: predator en 13 de Mayo de 2008, 10:32:18 PM
existe una forma de hacer algo mientras estas presionando un boton, por decir, hacer algo al mismo tiempo que precionas el boton.
Título: [VB 6.0]presionando un boton
Publicado por: [EX3] en 13 de Mayo de 2008, 10:56:06 PM
Contar las plaquetas del suelo de la habitacion por ejemplo...

No cobramos por palabras en el foro :P Explayate mas con la explicacion de la duda por que si no es dificil ayudarte. Lenguaje, consola o ventana, API, etc...

Salu2...
Título: [VB 6.0]presionando un boton
Publicado por: Leoheart en 14 de Mayo de 2008, 12:05:26 AM
Supongo que se referirá a hacer algo mientras el botón está pulsado.
Título: [VB 6.0]presionando un boton
Publicado por: predator en 14 de Mayo de 2008, 12:17:57 AM
si, es decir, hacer algo mientras tienes pulsado el boton, y cuando lo sueltes lo deja de hacer.

Edit, y por boton no me refiero a una tecla del teclado, si no con un simple boton de formulario
Título: [VB 6.0]presionando un boton
Publicado por: [EX3] en 14 de Mayo de 2008, 01:26:19 AM
Ejecutar una accion mientras se mantiene presionado un CommandButton en Visual Basic 6.0? Para interpretar pulsacion desde el teclado el evento KeyDown y para el raton el evento MouseDown. Estos se invocan mientras se este manteniendo pulsado el CommandButton pero no te serviran en todos los casos ya que le evento MouseDown en la practica solo se invocara con la primera pulsacion oviando si se mantiene o no pulsado el CommandButton, y el KeyDown con teclas como el retorno de carro no funciona. Para detectar cuando se deja de presionar KeyUp y MouseUp.

Abre un proyecto nuevo, mete un CommandButton y prueba el siguiente codigo:
Option Explicit

Dim i As Long

Private Sub Command1_KeyDown(KeyCode As Integer, Shift As Integer)
   i = i + 1
   Command1.Caption = i
End Sub

Private Sub Command1_KeyUp(KeyCode As Integer, Shift As Integer)
   i = 0
   Command1.Caption = i
End Sub

Este ejemplo se aplica los eventos de teclado. Mientras presiones una tecla que sepa interceptar el evento el contador se incrementara en 1. En cuanto dejes de presionar se reiniciara a 0. Con los eventos de raton no funcionara igual ya que como decia el evento solo intercepta el momento de la pulsacion pero no el estado continuado.

Salu2...
Título: [VB 6.0]presionando un boton
Publicado por: predator en 14 de Mayo de 2008, 06:17:06 AM
pues encontre una solucion algo rudimentaria, usando MouseDown y MouseUp, activo y desactivo un timer, donde tengo la rutina en el timer ejecutandose. Rudimentaria y Primitiva, pero hace lo que necesito.