use app designer to assign values to variables in existing ".m" script

7 vues (au cours des 30 derniers jours)
André_Santos
André_Santos le 1 Déc 2019
Réponse apportée : Tejas le 25 Sep 2024
I have a complex script that calls many other scipts with alot of functions all in the same directory. one of these scripts is called data file, and stores all the necessary input variables for the main scirpt to work. I want to create GUI for the user to give this input, which is quite simple, just some values. And i want them to be stored in the correct variables inside this Data file. Should be simple enough, but i cant find the answer to this problem
  1 commentaire
Sam Blake
Sam Blake le 9 Août 2023
Hello, did you ever find an answer to this question? I am having a similar issue at the moment. Any documentation for steps in the right direction would be much appreciated.

Connectez-vous pour commenter.

Réponses (1)

Tejas
Tejas le 25 Sep 2024
Hello André,
User inputs can be saved to a .M file by utilizing a button push callback along with file handling operations to open and write into the file. More details on writing to a file can be found in this documentation: https://www.mathworks.com/help/matlab/ref/fprintf.html#:~:text=a%20new%20line.-,Write%20Tabular%20Data%20to%20Text%20File,-Write%20a%20short .
Here is a simple example to illustrate the process:
  • Design a GUI in App Designer by adding two edit fields. Name one 'numVar' for numeric data and the other 'strVar' for text data.
  • Include a button in the GUI and assign a ButtonPushed callback to it. Within this callback, use the below code to write the variables to data file:
fid = fopen('dataFile.m', 'w');
fprintf(fid, 'numVar = %f;\n', app.numVarEditField.Value);
fprintf(fid, 'strVar = ''%s'';\n', app.strVarEditField.Value);

Catégories

En savoir plus sur Environment and Settings dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by