Info

此问题已关闭。 请重新打开它进行编辑或回答。

How to link pushbotton and a m file(script)

2 次查看(过去 30 天)
Vincenzo
Vincenzo 2011-11-9
关闭: MATLAB Answer Bot 2021-8-20
Hi I don't know how to call a m file(script) through a pushbotton...I know that i have to do do something in the function pushbotton_Callback(......) but i don't Know what.. I tried this..
but nothing.
It appears me the following warning:

回答(6 个)

Walter Roberson
Walter Roberson 2011-11-9
addpath() is only for use with directories, not individual files.
If you just want to execute the script, use run() -- but note that run() changes directories, so addpath() is better if you need to execute in the current directory.
Remember there is no point in using addpath() twice with the same path, so you may wish to check whether the target path is already on the path.

Vincenzo
Vincenzo 2011-11-9
run namefile only works from command window...if i put in function callback i have this error whe i click on botton:

Vincenzo
Vincenzo 2011-11-10
Someone can help me? I have this script but with run namefile doesn't start, unless i put it in command window...why?
  1 个评论
Walter Roberson
Walter Roberson 2011-11-10
Your script confuses base workspace with function workspace.

Vincenzo
Vincenzo 2011-11-10
With run namefile something start because i can see an image:
but the Workspace remains blank while i'm aspecting all the values that are in the script...like this
why it happens?

Vincenzo
Vincenzo 2011-11-10
  3 个评论
Walter Roberson
Walter Roberson 2011-11-10
The variables *are* being created, in the workspace of pushbutton2_Callback, and so they disappear again as soon as that callback finishes executing.
If you need your script to put the variables in the base workspace, then have it specifically put them there, such as by using assignin()
By the way, your code uses constructs that haven't been necessary since MATLAB 5.
Vincenzo
Vincenzo 2011-11-10
I solved that problem because before I had to do >>load (SEQ001.MAT) but now it's dynamic ,in fact there's no error in command window when i click on button.

Vincenzo
Vincenzo 2011-11-11
I solved the problem with run namefile by doing the following thing:
Go to: D:\Programs\Matlab\toolbox\matlab\lang\run.m
#line 74 I change 'caller' to 'base'...I don't know if it's something very wrong but it works!!
I proved with assignin() but in my case i don't what i have to pass assignin('base','var',v) but if i want poi5??
By the way it works...now i would like to put (always in base Workspace) a variable from edit text through a push button..it doesn't work:
that's my gui:
what i did in edit_callback:
and in pushbutton_Callback:
What else miss?

此问题已关闭。

Community Treasure Hunt

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

Start Hunting!

Translated by