Come aggiungere componenti a una GUI esistente creata da Guide?
-
27-10-2019 - |
Domanda
Ho appena creato una GUI usando la guida in Matlab per un piccolo progetto su cui sto lavorando. Ho tra le altre cose due campi di testo per da e a date. Ora mi piacerebbe sbarazzarmi di loro e usare uno strumento di selezione della data Java. Naturalmente questo non è possibile usando la guida, quindi devo aggiungerli manualmente. Sono riuscito a farli apparire mettendo questo codice nel mio apertura_fcn,
uicomponent(handles, 'style','com.jidesoft.combobox.DateChooserPanel','tag','til2');
usando Uicomponent.
Ma anche se viene visualizzato non riesco ad accedere agli attributi della data di selezione, ad esempio
get(handles.til2)
ritorna
??? Reference to non-existent field 'til2'.
Come posso risolvere questo problema?
Soluzione
A meno che non si modifichi la figura della GUI salvata, la base handles
La struttura non includerà il nuovo componente per impostazione predefinita.
Un modo per accedere al tuo componente è archiviare la maniglia tramite Guidata, aggiungendo quanto segue alla funzione di apertura:
handles.til2 = uicomponent(handles, 'style','com.jidesoft.combobox.DateChooserPanel','tag','til2');
guidata(hObject,handles)
Le funzioni che devono accedere alla maniglia necessitano della linea
handles = guidata(hObject)
Per restituire la struttura completa delle maniglie che include la presentazione til2