MATLAB Answers

Updating variable matrix values to static boxes in GUI !

5 ビュー (過去 30 日間)
chamant swarup
chamant swarup 2019 年 5 月 3 日
コメント済み: chamant swarup 2019 年 5 月 5 日
Iam completely new to GUI and programming any correction to code is appreciated !
I am trying to assign the value of variable x in another matfile named "main_file_Run" to static boxs !
For eg: varible x =[32, 7] and keeps updating and i when i press pushbutton it should run the matlab file needs to assign the values upated in x matrix i.e 32 nd 7 to two respective static boxes with tag names text3 and tex4 respectively.
function pushbutton1_Callback(hObject, eventdata, handles)
% a= get(handles.main_file_Run(variable x),'string');
% (set(handles.text3,'string'))
main_file_Run();
I know i completely missed the logic here ! I am only able to run the program by calling the matfile but have no clue what to do to update the values from the variables x to the two static boxes .Firstly how do we load the varible ? should we save it as text file then kind of load into the call back of pushbutton ?
thanks in advance!

回答 (1 件)

Kevin Phung
Kevin Phung 2019 年 5 月 3 日
編集済み: Kevin Phung 2019 年 5 月 3 日
make sure your function main_file_run() actually has an output, so in that function:
function x = main_file_run()
% blah blah blah
x = (some answer from calculations above)
end
then in your pushbutton callback:
function pushbutton1_Callback(hObject, eventdata, handles)
x = main_file_Run();
set(findobj(gcf,'Tag','text3'),'String',num2str(x(1)))
set(findobj(gcf,'Tag','text4'),'String',num2str(x(2)))
end
note :
  1. how the static text boxes display strings and not numerics.
  2. I'm finding the static textboxes through their given Tag properties (i hope you did mean this, and not their variable names defined in another function) in the current figure (gcf))
  3. For future reference, if you don't want to use gcf and want to look at a particular figure, you can try do do:
f = findobj(groot,'Name','FigureTitle') % returns figure handle of figure with specified name
  16 件のコメント
chamant swarup
chamant swarup 2019 年 5 月 5 日
X = main_file_Run();
handles.text3.String = num2str(X(1));
handles.text4.String = num2str(X(2));
I changed the code to this and it worked fine !!
thanks for the help people !!

サインインしてコメントする。

Community Treasure Hunt

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

Start Hunting!

Translated by