MATLAB Answers


how take input and save to an array in matlab gui

I am new to matlab gui. Actually I want take input and then store them as an array using matlab gui. Can anybody guide me how to do that. Actually what I want is whenever I press push button what ever values in edit boxes they should save in an array. length of the array is decided by user in code.test.png


Sign in to comment.




1 Answer

Answer by Sulaymon Eshkabilov on 23 Aug 2019
 Accepted Answer

Hi Muhammad,
In your exercise, you'd need to edit your function file (nested callback function for [Push Button]) obtained from your gui model test.fig. You can save/export the user entries to an external file or save in the workspace by editing the callback function of [Push Button] that should have get() and the conversion str2double() to convert the user entries from edit boxes. If you still can solve this, then post your code obtained from text.fig, so more specific directions can be given to you.
Good luck.


Muhammad Haziq comments:
Hi Sulaymon,
Thanks for guiding me on this issue. I have done this task successfully but it seems that its not an good way I am uploading my code file and fig file. can you look it and suggest me something to make it more efficient. instead of plot I just show array values in command window.
Sulaymon Eshkabilov's answer moved here:
Hi Muhammad,
Here are the edited files (I have removed your created functions to save the user entries and assigned global variables that are not necessary).
The updated model plots and saves the user entries (under the callback function SAVE_Callback) for tmin and tmax (I have called them this way. You can change them as you want), computed function values (as an example, I have used f=sinc(t) function that you can change inside the callback function: PLOT_Callback). Moreover, I have included one addtional item to save the computed function values (plotted) and input argument space generated with linspace(). All of these you can change w.r.t your problem statements.
Good luck.

Sign in to comment.