2013-05-11 19 views
9

Sto lavorando con la GUI di MATLAB.Variabili globali nella GUI MATLAB?

Quando sto tentando di accedere alla variabile che è stata definita con il pulsante, non è definita nel menu a comparsa. Le variabili; dovrebbe essere impostato su "globale", quindi è definito nell'intero programma. E posso usarlo in qualsiasi callback.

Ragazzi, avete un'idea di come rendere le variabili "globali"?

+0

potresti spiegare meglio cosa stai cercando di fare? Voglio dire, stai cercando di eseguire un'azione premendo il pulsante e quell'azione dipende dal valore del menu popup? secondo, stai usando GUIDE per programmare la GUI o lo stai facendo a livello di programmazione? – Eugenio

risposta

8

Ovunque si debba accedere a una variabile globale nel proprio codice (ad esempio, file di script, funzioni, ecc.), Deve essere dichiarato come tale: global globalVariable;. Ad esempio .:

function myGUI_OpeningFcn(hObject, eventdata, handles, varargin) 
    global myGlobalVar; 
    myGlobalVar = [...] 
    [...] 
end 

function btnWriteFile_Callback(hObject, eventdata, handles) 
    global myGlobalVar; 
    if myGlobalVar [...] 
    [...] 
end 

Si noti che in entrambe le funzioni la variabile è dichiarata come globale in modo per loro di accedervi.

+0

Grazie mille! –