Simple Funcion Solo Numeros En Un Textbox


Goto page 1, 2  Next

Subject: Simple Funcion Solo Numeros En Un Textbox
aqui expongo una simple funcion pero muy util para dejar que solo se introduzcan números dentro de un textbox o lo puedes aplicar a otro control.

PRIVATE FUNCTION Solo_Numeros(KeyTecla AS Integer)

IF KeyTecla >= 48 AND KeyTecla <= 57 THEN
ELSE
STOP EVENT
END IF

END


y la puedes llamar de esta forma
PUBLIC SUB TextBox1_KeyPress()
Solo_Numeros(Key.Code)
END


si quieres saber el Key de una tecla especifica lo puedes hacer de la siguiente forma
PUBLIC SUB TextBox1_KeyPress()
Message.Info(Key.Code)
END

entonces cada vez que presiones una tecla dentro del textbox aparecera un Message con el numero Key (Key.Code)

saludos

Subject: Re: Simple Funcion Solo Numeros En Un Textbox
Hola

Esta es mi versión desde el manejador del evento KeyPress del mismo control, que además permite borrar hacia atrás o hacia delante y pulsar TAB para cambiar al siguiente control:

PUBLIC SUB txtFreq_KeyPress()
SELECT CASE Key.Code
CASE 48 TO 57
CASE 46
CASE Key.BackSpace
CASE Key.Delete
CASE Key.Tab
CASE ELSE
STOP EVENT
END SELECT
END


Pero igualmente se puede convertir a una función para usarlo a tu manera.

Saludos

Profile PM  
Subject: Re: Simple Funcion Solo Numeros En Un Textbox
Hola
Esa rutina tiene el problema de usar constantes numéricas que pueden dar problemas. gambas aconseja no utilizarlas.
http://gambasdoc.org/help/comp/gb.qt/key/code

Reescribo esa rutina para evitar ese problema

PUBLIC SUB txtFreq_KeyPress()
SELECT CASE Key.Code
CASE key["0"] TO key["9"]
CASE key[" "]
CASE Key.BackSpace
CASE Key.Delete
CASE Key.Tab
CASE ELSE
STOP EVENT
END SELECT
END


aunque tambilén valdría mediante las funciones de interpretación de caracteres
PUBLIC SUB txtFreq_KeyPress()
SELECT CASE Key.Code
CASE isdigit(key.text)
CASE isblank(key.text)
CASE Key.BackSpace
CASE Key.Delete
CASE Key.Tab
CASE ELSE
STOP EVENT
END SELECT
END


Interpretación de caracteres

Last edited by soplo on Friday, 02 October 2009, 18:47; edited 1 time in total
Profile PM  
Subject: Re: Simple Funcion Solo Numeros En Un Textbox
wena wena... me gusto...

Subject: Re: Simple Funcion Solo Numeros En Un Textbox
Pues de verdad que no lo entiendo.
Yo en VB usaba IsNumeric() para eso. No se porque no utilizáis IsNumber() en el caso de gambas

PUBLIC SUB TextBox1_KeyPress()
IF IsNumber(Val(Key.Text)) = FALSE THEN
STOP EVENT
END IF
END

edito-
por correciones, ok

Last edited by CHIKILICUATRE on Monday, 25 January 2010, 00:40; edited 1 time in total
Profile PM  
Subject: Re: Simple Funcion Solo Numeros En Un Textbox
There is a VALUEBOX who realise this job.
but there is a bug. If you ajust Read propertie to FALSE, it is possible to write in it.

Profile PM  
Subject: Re: Simple Funcion Solo Numeros En Un Textbox
Why do you think that is a bug? If Read = True, then the ValueBox is only read, else (Read = False) the ValueBox is Read/Write. That's logical for me.

Subject: Re: Simple Funcion Solo Numeros En Un Textbox
valuebox is only a new class inherits textbox with some templates. Making a new class which take from textbox wilth your own templates and methods is very easy so I don't like valuebox. Dates ave valid en english format only in valuebox.

I prefer my own class that does everything as I like. Its very easy and not a waste you time

Profile PM  
Subject: Re: Simple Funcion Solo Numeros En Un Textbox
Yo creo que la mejor función es usar el control ValueBox que solo acepta números mientras que el TextBox acepta letras, Caracteres especiales y números "Alfanumérico"

Last edited by GambasLinux on Sunday, 28 February 2010, 13:45; edited 1 time in total
Profile PM  
Subject: Re: Simple Funcion Solo Numeros En Un Textbox
Depende de lo que quieras. El valuebox es un poco "buggy", defectuoso según para qué lo uses. Por ejemplo con valores Float, si el numero entero es 0 nunca lo muestra delante del delimitador decimal:

0,21332 lo mostraría como ,21332

Prefiero en este caso un control a mi medida...

Saludos

Profile PM  
Goto page 1, 2  Next

Page 1 of 2


  
You cannot post new topics
You cannot reply to topics
You cannot edit your posts
You cannot delete your posts
You cannot vote in polls
You cannot attach files
You can download files
You cannot post calendar events

   

This is a "Lo-Fi" version of our main content. To view the full version with more information, formatting and images, please click here.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Generation Time: 0.1262s (PHP: -18% SQL: 118%)
SQL queries: 26 - Debug Off - GZIP Enabled