Como puedo detener NkeyCode

como hago para bloquear Nkeycode, cuando el numero escogido al azar con Rand se detenga?

Ejemplo: El numero escogido fue: 65
un textbox que incremente de 0 a 100 y cuando llegue a 65 desactive Nkeycode.
Espero me comprendas
saludos...

1 respuesta

Respuesta
1

Es un gusto saludarte! :) :)

Mmm... como detener la pulsación de alguna tecla asignada al nKeyCode.. mm pues como que esta difícil! Je je. Lo que si se puede hacer es evaluar cuando esta disponible la acción al presionar la tecla, a través de alguna otra condición.

Para ser mas claro.. veamos el siguiente ejemplo:

Tenemos un Text1 en el form en donde asignamos un valor (en tu caso, el numero aleatorio). Si se presiona F4 y el texto esta vacío (THISFORM. Text1.Value = 0), el procedimiento para generar el numero aleatorio se dispara... porque? Porque se
Presiona la tecla y porque aun no se ha generado ningún valor anterior... sabemos que no hay ninguna valor anterior porque el text tiene de value = 0.

¿Qué pasa si ya se generó un valor aleatorio que se asignó al text? Al presionar F4, la condición no se cumple y por tanto... no se genera el proceso, es decir, podes presionar 100000 veces F4 pero es como si se "desactivara" la tecla.

Para que veas mas sencillo... hace esto como ejemplo:
Inserta un text1 en tu form. En el evento KeyPress.. coloca un código como este:

**--
IF nKeyCode = -3 AND VAL(THIS.Value) = 0
Messagebox("hola")
Endif
**--

Guarda y ejecutá. En el form, presiona F4 cuando no haya ningún valor (esté vacío) en el text1 y aparecerá el mensaje Hola. Introducí algún numero en el text y luego presiona F4 y veras que no hay efecto.

Bien... espero te sea útil. Cualquier cosa, avisame! :) :) :) A tus ordenes!

Ravenn :D :D :D

Ok haré la prueba, aunque aun sigo sin entender.

saludos

¿Te ha funcionado? Avisame para ayudarte si no dio resultado!

Un abrazo! :)

habrá alguna forma de condicionar, por ejemplo

Para empezar el numero aleatorio fue: 100

y un texbox tengo el numero 99 digamos, y el siguiente numero que se sume llegue al 100

Como puedo hacer para que ese textbox ya no sume? o bloques la suma?

saludos...

¿Podrías ser un poco mas claro? No comprendí bien... me disculpo. ¿El numero aleatorio fue 100 y en un text tenes 99 y el siguiente numero que se sume llegue a 100? ¿Cómo es eso? ¿OO?

Avisame! :)

Tenemos un Textbox que trabaja como acumulador, y se encuentra en el numero 99, pero al sumar uno mas llega a 100, y como el numero aleatorio es 100, habrá alguna condición para bloquear ese textbox o que ya no siga incrementando?

Saludos...

En este caso, lo mas recomendable es condicionar la ejecución del código desde donde se obtiene el 100. Si el numero limite es 100, que el código no se ejecute. Algo así:

**--Si el valor numérico del text es = 100

IF THISFORM.Text1.Value == 100

**--()No correr ningún código.

**--Messagebox("El numero limite se ha obtenido.")

**--Si el valor numérico del text esta vacío o no es 100, se ejecuta.

ELSE

**--Acá coloca el código que usas para generar el 100.

ENDIF

**--//

Esta es una condición para evaluar el valor del text que puede funcionar. Pruébalas y me avisas!

Como hago para mostrar lo que hay en el textbox, ya que pueder ser cualquier numero del uno al 100

D :D

Para mostrar o cargar un valor en un control text, basta con asignar a la propiedad VALUE algún valor contenido en una variable. Por ejemplo: si vos cargar el numero aleatorio en una variable llamada "lnNumAle"... asignalo a un text así:

THISFORM.Text1.Value = lnNumAle

THISFORM.Refresh

**--//

Y listo! :)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas