Matlab - Conrolar la longitud de un valor ingresado en GUIDE

 
Vista:

Conrolar la longitud de un valor ingresado en GUIDE

Publicado por Christian (5 intervenciones) el 14/06/2012 08:56:43
Hola, recien empiezo a utilizar Guide y estoy haciendo un programa para calcular mascaras, clases de red, etc, por lo que la IP de ingreso solo debe ser de tres dígitos.
Quisiera que me ayuden con un código para que el edit text acepte solo 3 valores numéricos.
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
sin imagen de perfil

Conrolar la longitud de un valor ingresado en GUIDE

Publicado por Gerardo (104 intervenciones) el 16/06/2012 07:40:51
Hola Christian!

No sé si se puede hacer lo que intentas, pero puedo darte una sugerencia que espero te ayude en lo que quieres.

Puedes poner un codicional para que cuando los digitos sean mayores q 3 no se realice la accion

1
2
3
4
5
6
7
a = get(handles.edit1,'String');
dig = numel(a);
if dig > 3
    msgbox('INGRESE UN NUMERO DE TRES DIGITOS O MENOR','MENSAJE')
else
    % realizar accion
end


Saludos!
Gerardo.
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

Controlar la longitud de un valor ingresado en GUIDE

Publicado por Christian (5 intervenciones) el 16/06/2012 09:00:28
Gracias Gerardo creo que funcionaria bien el código que pusiste, lo que queria hacer es que en una casilla ingreso el valor ip que maximo alcanza 255, en este caso hice que si el valor es mayor a 255 se borre la casilla, claro que una falla es cuando ingreso 000255 los ceros igual se muestran, pero igual me evita que ingrese valores mayores a 255 :)
1
2
3
4
if valorMascara1>255
handles.text4=0;
set(handles.entrada1Mascara,'String',0)
end


por cierto para que sirve "dig = numel(a)" , me refiero a la sentencia numel?
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
sin imagen de perfil

Controlar la longitud de un valor ingresado en GUIDE

Publicado por Gerardi (104 intervenciones) el 17/06/2012 01:42:56
Hola Christian!

La sentencia numel(A) devuelve el numero de elementos del arreglo A.
Al ser A una cadena, devuelve los elementos de la cadena

1
2
3
4
5
6
7
8
9
10
11
12
13
14
>> A = 'hola'
A =
hola
 
>> A(1), A(2)
ans =
h
 
ans =
o
 
>> d = numel(A)
d =
     4


pero si pones un double como entrada dependera:

1
2
3
4
5
6
7
8
9
10
11
>> A = 255
A =
   255
 
>> d = numel(A)
d =
     1
 
>> d = numel(rand(3,4))
d =
    12


si quieres le agregas...

1
2
3
4
5
6
7
a = get(handles.edit1,'String');
dig = numel(a);
if dig > 3 || str2double(a)>255
    msgbox('INGRESE UN NUMERO DE TRES DIGITOS O MENOR Y NO MAYOR A 255','MENSAJE')
else
    % realizar accion
end


Saludos!
Gerardo.
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

Controlar la longitud de un valor ingresado en GUIDE

Publicado por Christian (5 intervenciones) el 17/06/2012 09:35:11
Si voy a ver si le agrego, ese comando no lo sabia puede servirme, muy buena la explicacion
Gracias!
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