Matlab - Ayuda SUMADORA SENCILLA

 
Vista:
Imágen de perfil de Carlos M Ariza
Val: 3
Ha aumentado su posición en 4 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Ayuda SUMADORA SENCILLA

Publicado por Carlos M Ariza (39 intervenciones) el 13/11/2012 00:20:00
Hola amigos,
Saludos desde colombia...

Bueno tengo pensado hacer una sumadora automática, algo donde tenga 2 campos de entrada que serían los 2 numeros a sumar y un tercer campo donde quiero imprimir el resultado. Pues creé los 3 campos y los etiqueté, pero a la hora de programarlos no sé como hacer para que apenas le proporcione los valores me los sume automáticamente sin tener que usar un Push Button que es como aprendí al principio XD...

Grax por la ayuda :D
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 JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

SUMA DE DOS NUMEROS

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 13/11/2012 06:55:44
No debes decir suma sencilla. Eso de sencilla puede ser para una persona para otra persona pueda que no sea asi, depende mucho de cuanto conocimento de matlab uno tiene.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
[code]function varargout = suma2(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @suma2_OpeningFcn, ...
                   'gui_OutputFcn',  @suma2_OutputFcn, ...
                   'gui_LayoutFcn',  [] , ...
                   'gui_Callback',   []);
if nargin && ischar(varargin{1})
    gui_State.gui_Callback = str2func(varargin{1});
end
 
if nargout
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
    gui_mainfcn(gui_State, varargin{:});
end
 
function suma2_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
 
function varargout = suma2_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
 
function edit1_Callback(hObject, eventdata, handles)
 
function edit2_Callback(hObject, eventdata, handles)
a=str2double(get(handles.edit1,'String'));
b=str2double(get(hObject,'String'));
set(handles.text1,'string',a+b);
[/code]



Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programacion matlab
[email protected]

http://matlabcaballero.blogspot.com
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 Dave
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Ayuda SUMADORA SENCILLA

Publicado por Dave (1094 intervenciones) el 14/11/2012 18:00:08
Hola Carlos;

Muy interesante tu aplicación.

Sobre tu consulta, te sugiero que controles el evento KeyPress Fcn del Text edit, debes pasarle mediante una función, de tal forma que el edit ejecute la operación sobre el teclado antes de que llegue cualquier control o formulario.

Espero que sea de alguna ayuda.

Saludos
Dave Correa
[email protected]
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
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

Ayuda SUMADORA SENCILLA

Publicado por JOSE JERMIAS CABALLERO (2 intervenciones) el 14/11/2012 18:04:46
Hola Dave.
Interesante tu respuesta.
me gustaria saber como o haces, serias tan amable de poner el codigo de esta pregunta, segun desde el punto de vista que enfocas este pregunta.
Seria mas provechoso para las personas que trabajamos en matlab.

Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programacion matlab
[email protected]

http://matlabcaballero.blogspot.com
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 Dave
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Ayuda SUMADORA SENCILLA

Publicado por Dave (1094 intervenciones) el 14/11/2012 18:52:06
Hola José;

Suponiendo que tenemos dos edit para los datos de entrada (density y volumen) y un edit para la salida (mass).

A continuación te adjuntoel código de referencia (para generar la función KeyPressFcn), esto lo generas colocando el cursor sobre el control y presional click derecho y eliges View Callbacks y luego KeyPressFnc.

Espero que sea de alguna ayuda, cualquier cosa estamos en contacto.

Saludos
Dave Correa
[email protected]
Servicios de Programación Matlab
http://fismatlab.blogspot.com/



% --- Executes on key press with focus on density and none of its controls.
function density_KeyPressFcn(hObject, eventdata, handles)
% hObject handle to density (see GCBO)
% eventdata structure with the following fields (see UICONTROL)
% Key: name of the key that was pressed, in lower case
% Character: character interpretation of the key(s) that was pressed
% Modifier: name(s) of the modifier key(s) (i.e., control, shift) pressed
% handles structure with handles and user data (see GUIDATA)

clc
density = str2double(get(handles.density, 'String'))
volume = str2double(get(handles.volume, 'String'))
if or(isnan(density),isnan(volume))
set(hObject, 'String', 0);
errordlg('Input must be a number','Error');
end

mass = density * volume;
set(handles.mass, 'String', mass);


% --- Executes on key press with focus on volume and none of its controls.
function volume_KeyPressFcn(hObject, eventdata, handles)
% hObject handle to volume (see GCBO)
% eventdata structure with the following fields (see UICONTROL)
% Key: name of the key that was pressed, in lower case
% Character: character interpretation of the key(s) that was pressed
% Modifier: name(s) of the modifier key(s) (i.e., control, shift) pressed
% handles structure with handles and user data (see GUIDATA)

clc
density = str2double(get(handles.density, 'String'))
volume = str2double(get(handles.volume, 'String'))
if or(isnan(density),isnan(volume))
set(hObject, 'String', 0);
errordlg('Input must be a number','Error');
end

mass = density * volume;
set(handles.mass, 'String', mass);
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 Carlos
Val: 3
Ha aumentado su posición en 4 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Ayuda SUMADORA SENCILLA

Publicado por Carlos (39 intervenciones) el 15/11/2012 00:06:59
Hey gracias jose y dave. Me ha servido muchísimo. La idea principal es probarla con una sumadora, pero en el fondo lo que quiero es independizar mis programas de los pushbutton, pues la mayoría son sobre cálculos matemáticos y se me hace un poco tedioso tener que esperar a introducir todos los valores en los edittext para así después ejecutar los cálculos.

Muchas grax :D
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