Matlab - Ingresar solo numeros en edit

   
Vista:

Ingresar solo numeros en edit

Publicado por pablo (6 intervenciones) el 11/08/2015 19:31:07
Buenas tardes, quería saber si alguien sabe como se puede hacer para que en un edit se pueda solo ingresar número y no letras?. Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Royeth

Ingresar solo numeros en edit

Publicado por Royeth jesus.royeth@gmail.com (749 intervenciones) el 11/08/2015 20:08:04
hola saludos , matlab no posee en su guide un componente que permita solo valores numéricos , pero existen bibliotecas internas de matlab con componentes de java que podrías agregar , de lo contrario tendrías que programar por defecto en el callback de tu edit text algo como lo siguiente :

1
2
3
4
5
6
7
8
9
function qualquiera
uicontrol('Style','edit','CallBack',@royeth)
end
function royeth(i,e)
s=str2double(get(i,'String'));
if isnan(s)
    set(i,'String','')
end
end
en este caso una vez te salgas del botón si no es un valor numérico lo borra

Saludos
https://www.facebook.com/royethmatlab/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ingresar solo numeros en edit

Publicado por pablo (6 intervenciones) el 11/08/2015 20:41:12
La idea que tenía en mente era hacer un if, de modo que si el valor ingresado era un número haga el proceso y si el texto ingresado son letras que no haga los cáculo. Lo que pasa es que no se si se puede tomar el valor ingresado en el edit y ver si es un número o una palabra.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Royeth

Ingresar solo numeros en edit

Publicado por Royeth jesus.royeth@gmail.com (749 intervenciones) el 11/08/2015 21:03:35
te puse arriba el código para que lo revisaras esa parte que mencionas está incluída :

1
2
3
4
5
6
7
s=str2double(get(i,'String')); obetner
 
if isnan(s) if no es un número (es una palabra)
 
    set(i,'String','')
 
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar