Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Thread Subject:
declaring global variables: GUI'S

Subject: declaring global variables: GUI'S

From: simon ott

Date: 17 Jan, 2009 20:40:18

Message: 1 of 5


Hello,
I want to declare global variables so that I could access them from my different GUI's. I declared then in OpeningFcn of every GUI.

function Prog_OpeningFcn(hObject, eventdata, handles, varargin)
global A
global A

but I still can not eccess them
some hint please ?

simon

Subject: declaring global variables: GUI'S

From: Sadik

Date: 17 Jan, 2009 20:44:02

Message: 2 of 5

"simon ott" <simon_ott@yahoo.com> wrote in message <gktfni$je$1@fred.mathworks.com>...
>
> Hello,
> I want to declare global variables so that I could access them from my different GUI's. I declared then in OpeningFcn of every GUI.
>
> function Prog_OpeningFcn(hObject, eventdata, handles, varargin)
> global A
> global A
>
> but I still can not eccess them
> some hint please ?
>
> simon

Hello Simon,

I hope this helps [especially section 7]:

Hello Cesar,

I believe Section 7 of the following link is the one you are looking for:

http://www.mathworks.com/support/tech-notes/1200/1205.html

Subject: declaring global variables: GUI'S

From: Steven Lord

Date: 19 Jan, 2009 15:52:41

Message: 3 of 5


"simon ott" <simon_ott@yahoo.com> wrote in message
news:gktfni$je$1@fred.mathworks.com...
>
> Hello,
> I want to declare global variables so that I could access them from my
> different GUI's. I declared then in OpeningFcn of every GUI.
>
> function Prog_OpeningFcn(hObject, eventdata, handles, varargin)
> global A
> global A
>
> but I still can not eccess them
> some hint please ?

If you declare a variable as global, then you must declare it as global in
EVERY function in which you want to access it via the global workspace.
That means that you will need to declare A as global in every callback
function that wants to use this variable in each of your GUIs. It also
means that if someone else's function uses A as a global variable then they
can potentially interfere with the operation of your GUI by changing A
without your GUI functions' knowledge. For these reasons and others, using
global variables is discouraged. Instead, you could store your data in the
handles structures for your GUIs (and give other GUI functions access to
those handles structures if they need access to the data in a particular
GUI), to store them in the UserData for your GUI, etc.

Look at these pages from the documentation for other techniques you can use
to share data between callbacks and between GUIs:

http://www.mathworks.com/access/helpdesk/help/techdoc/creating_guis/brq3263.html

http://www.mathworks.com/access/helpdesk/help/techdoc/creating_guis/f5-1002439.html

--
Steve Lord
slord@mathworks.com

Subject: declaring global variables: GUI'S

From: Akash Mullangi

Date: 19 Mar, 2013 18:59:18

Message: 4 of 5

Hi Steven ,
If I am on a while loop , your suggested method wont help .
Is there anyway , if not declaring variable global ?

Thank you
"Steven Lord" <slord@mathworks.com> wrote in message <gl27k9$86h$1@fred.mathworks.com>...
>
> "simon ott" <simon_ott@yahoo.com> wrote in message
> news:gktfni$je$1@fred.mathworks.com...
> >
> > Hello,
> > I want to declare global variables so that I could access them from my
> > different GUI's. I declared then in OpeningFcn of every GUI.
> >
> > function Prog_OpeningFcn(hObject, eventdata, handles, varargin)
> > global A
> > global A
> >
> > but I still can not eccess them
> > some hint please ?
>
> If you declare a variable as global, then you must declare it as global in
> EVERY function in which you want to access it via the global workspace.
> That means that you will need to declare A as global in every callback
> function that wants to use this variable in each of your GUIs. It also
> means that if someone else's function uses A as a global variable then they
> can potentially interfere with the operation of your GUI by changing A
> without your GUI functions' knowledge. For these reasons and others, using
> global variables is discouraged. Instead, you could store your data in the
> handles structures for your GUIs (and give other GUI functions access to
> those handles structures if they need access to the data in a particular
> GUI), to store them in the UserData for your GUI, etc.
>
> Look at these pages from the documentation for other techniques you can use
> to share data between callbacks and between GUIs:
>
> http://www.mathworks.com/access/helpdesk/help/techdoc/creating_guis/brq3263.html
>
> http://www.mathworks.com/access/helpdesk/help/techdoc/creating_guis/f5-1002439.html
>
> --
> Steve Lord
> slord@mathworks.com
>

Subject: declaring global variables: GUI'S

From: Steven_Lord

Date: 19 Mar, 2013 21:19:46

Message: 5 of 5



"Akash Mullangi" <amullangi@hydro-tech.com> wrote in message
news:kiaci6$f27$1@newscl01ah.mathworks.com...
> Hi Steven ,
> If I am on a while loop , your suggested method wont help .

I don't understand the first part of this sentence. The phrase "on a while
loop" doesn't seem to make sense in this context.

> Is there anyway , if not declaring variable global ?

Probably but the question needs clarification.

--
Steve Lord
slord@mathworks.com
To contact Technical Support use the Contact Us link on
http://www.mathworks.com

Tags for this Thread

No tags are associated with this thread.

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Contact us