Matlab - Evaluar editbox

 
Vista:

Evaluar editbox

Publicado por Eco (3 intervenciones) el 16/01/2005 01:33:31
Lo que pretendo es evaluar un editbox para que los datos introducidos tengan el formato y longitud deseado. En concreto quiero introducir un número binario de 8 digitos.
En la GUI hay un boton que valida la información y toma los valores para realizar los cálculos, por lo que creo que es aquí donde debería comprobar esto, aunque también es posible que deba hacerlo cuando se rellenan los datos en el editbox para poner un mensaje de alerta.
De todos modos lo mi pregunta es ¿como comprobar si es un numero binario de 8 cifras, hay alguna función de Matlab que pueda utilizar?
Muchas gracias.
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 Alejandro

Validar número binario de 8 dígitos desde editbox en GUI

Publicado por Alejandro (145 intervenciones) el 06/10/2023 17:12:48
¡Entendido, Eco! Puedes usar la función `regexp` de Matlab para verificar si el contenido del `editbox` tiene el formato deseado. Aquí hay un ejemplo de cómo podrías hacerlo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function validarCallback(hObject, eventdata, handles)
    % Obtener el contenido del editbox
    contenidoEditbox = get(handles.editbox1, 'String');
 
    % Verificar si es un número binario de 8 dígitos
    patron = '^[01]{8}$';
 
    if ~isempty(regexp(contenidoEditbox, patron, 'once'))
        % Es un número binario de 8 dígitos, realizar los cálculos
        % ...
        disp('Número válido. Realizando cálculos...');
    else
        % No cumple con el formato deseado
        warndlg('Introduce un número binario de 8 dígitos.', 'Formato Incorrecto');
    end
end

Aquí, `^[01]{8}$` es una expresión regular que coincide con una cadena que contiene exactamente 8 dígitos binarios (0 o 1). La función `regexp` devuelve un array de coincidencias, e `isempty` se utiliza para verificar si no hay coincidencias.

Esta verificación podría colocarse en la función asociada al botón de validación o incluso en el callback del `editbox` si deseas dar alertas inmediatas al usuario cuando ingresa datos incorrectos.

Espero que esto te sea útil. ¡Déjame saber si tienes más preguntas!
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