How to display the answer got from .m file in GUI -- in edit box

4 visualizaciones (últimos 30 días)
Sir, I'm just experimenting with GUI ... i struck up in one point, where i need to call a .m file and to display its value in the edit box... i called the .m file as per http://www.mathworks.in/matlabcentral/answers/4213-how-to-call-contents-from-an-m-file-into-gui-callback-functions
but the thing is how to display a value in edit box, my progeam is just to calculate GLCM, and to display Contrast, Correlation ,Energy and Homogenety, i averaged these values, now to display them in edit box
% to display contrast'C' is the variable which have contrast value
function edit1_Callback(hObject, eventdata, handles)
% hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
C= str2double(get(hObject, 'String'));
if isnan(C)
set(hObject, 'String', 0);
errordlg('Input must be a number','Error');
end
handles.C=C
guidata(hObject,handles)
Suggestions please...

Respuesta aceptada

Mahdi
Mahdi el 26 de Mzo. de 2013
I would suggest that your .m is a function that gives a specific output. So, from the previous post (depending on how many outputs your .m file has), you can do this:
output1=mfilename;
% Might be [output1, output2]=mfilename depending on how many outputs you have
Now, if you want to set the value into the edit box, use the set() command
set(handles.editbox1, 'String', num2str(output1))
handles.editbox1 is the tag of the box that you want to edit and output1 is the value that you want to display.
  10 comentarios
Mahdi
Mahdi el 1 de Abr. de 2013
When you run a .m file in a GUI, the variables in the .m file are not global and are kept internally in the .m file workspace. As a result, these variable names are not defined. This is why I suggested making it a function over creating global variables. (There are a lot of reasons to avoid globals)
Subha
Subha el 2 de Abr. de 2013
ok sir,, i've searched in matlab answers and found that we can simply write the .m fine name and set the values to the editbox, like
grayyy_gui
set(handles.editbox1, 'String', num2str(F(1)))
where now grayyy_gui is a script .m file and F is a variable in it... ........ because of your suggestions oly i built a small gui for my application,, thanks a lot for this help sir..

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Startup and Shutdown en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by