Come creare una GUI in MATLAB

December 1

Come creare una GUI in MATLAB


Mentre gli script MATLAB sono potenti e personalizzabili, digitando righe di codice non è sempre il modo migliore per trattare con i vostri dati. Potrebbe essere necessario uno strumento di visualizzazione interattiva dei dati che non è costruito in MATLAB. In alternativa, potrebbe essere necessario creare uno strumento di analisi dei dati interattivo per qualcuno che non sta bene con la linea di comando di MATLAB. In casi come questi, la scelta migliore potrebbe essere una interfaccia utente grafica (GUI). MATLAB è uno strumento di creazione GUI chiamato GUIDA (GUI Development Environment). GUIDE è una GUI per la creazione di interfacce grafiche. Utilizzando guida, è possibile definire il layout GUI e hanno MATLAB genera automaticamente il codice della GUI. È quindi possibile modificare il codice della GUI per personalizzare il comportamento del vostro GUI.

istruzione

GUI layout

1 Aperto GUIDA digitando "guida" (senza le virgolette) nella riga di comando di MATLAB. Una finestra pop-up.

2 Dalla lista sul lato sinistro della finestra, scegliere un modello di interfaccia grafica cliccando su di esso. "GUI Blank" (impostazione predefinita) crea una GUI con nulla su di esso. "GUI con Uicontrols" crea una interfaccia grafica con un paio di esempio caselle di testo modificabili, voci dei tasti di radio e pulsanti. "GUI con asce e Menu" crea una GUI con assi trama campione e un menu a discesa del campione. "Modale domanda di dialogo" crea una interfaccia grafica con il testo statico "Vuoi creare una finestra di domanda?" e "Sì" e "no" pulsanti. Una volta che avete scelto un modello, fai clic su "OK". Il modello scelto GUI apparirà in un editor di layout GUI.

3 Ridimensionare tutta la GUI facendo clic sulla GUI lontano da qualsiasi componenti (la luce, griglia di colore grigio). Quindi, spostare il mouse per la, in basso a destra della GUI (la luce, griglia di colore grigio). Quando il vostro puntatore del mouse cambia da una freccia in una forma nera indietro L, fare clic e trascinare per rendere l'interfaccia grafica più grande.

4 Passare il puntatore del mouse sopra le piccole icone sul lato sinistro del layout editor GUI. Ogni icona rappresenta una componente GUI. Come si passa il mouse sopra ogni icona, il nome del componente GUI pop-up.

5 Fare clic sull'icona di un componente GUI e trascinare il componente GUI sulla GUI. Quando si rilascia il pulsante del mouse, apparirà il componente scelto sulla GUI. È possibile spostare il componente in giro facendo clic su di esso e trascinandolo in una nuova posizione. È possibile ridimensionare la componente facendo clic su di esso una volta, quindi facendo clic e trascinando una delle piccole scatole nere che appaiono attorno ad esso. Scegli e disporre i componenti GUI in base alle proprie esigenze.

6 Modificare il testo di ogni componente GUI facendo clic su di esso per selezionarlo. Poi, andare al menu Visualizza e fare clic sulla finestra di ispezione Proprietà. Nell'elenco risultante, cliccare su "String". Una finestra di dialogo apparirà in cui è possibile inserire il testo su un pulsante, il testo di una mostra statica o le opzioni desiderate in un menu.

GUI di programmazione

7 Salva il tuo GUI andando sul menu "File" e facendo clic su "Salva". Inserire un nome di file per il GUI e fare clic su "OK". MATLAB salverà l'interfaccia grafica in un file .fig, e generare automaticamente un file .m che contiene le funzioni che controllano le azioni di ciascun componente. Il file .m si aprirà automaticamente nell'editor di testo MATLAB. Ad esempio, si inserisce il nome del file testgui nella finestra di dialogo Salva e fare clic su OK. MATLAB salva il layout GUI in un file chiamato testgui.fig, e genera il codice GUI in un file chiamato testgui.m.

8 Programma le azioni di componenti GUI facendo clic destro sul componente nel layout editor GUI, poi scegliendo "Visualizza le richiamate -. Richiamata" Il file .m si sposterà la funzione di callback per quel componente. La funzione di callback per un componente definisce l'azione che si verifica quando l'utente fa clic su tale componente. Aggiungere il proprio codice MATLAB per la funzione di richiamata del componente e salvare il file scegliendo "File - Save". Quando l'utente fa clic su tale componente nella GUI, MATLAB eseguirà la funzione di richiamata appena immesso. Ad esempio, il GUI contiene un pulsante con l'etichetta "Linea". Quando l'utente fa clic su tale pulsante, si desidera MATLAB per visualizzare un grafico della retta y = x tra x = 1 ex = 10. Si potrebbe modificare la funzione di callback in modo che appaia in questo modo:

% --- Esegue sul pulsante in linea.

Funzione Line_Callback (hObject, eventdata, maniglie)

x = 1,10;

y = x;

figura;

plot (x, y);

% HObject maniglia per linea (vedi GCBO)

% Eventdata riservato - da definire in una futura versione di MATLAB

% Maniglie struttura dotata di maniglie e dati utente (vedi GUIDATA)

Ora, quando un utente fa clic sul pulsante "Line", MATLAB visualizzare il grafico in una nuova finestra.

9 Accesso proprietà dei componenti GUI in richiamata codice funzione digitando "c = get (hObject, 'Proprietà')" (senza le virgolette). Sostituire hObject con il manico oggetto e 'Proprietà' con il nome della proprietà che si desidera, racchiuso tra virgolette singole (per esempio, 'String'). Il valore della proprietà verrà assegnato alla "c" variabile. Ad esempio, il GUI contiene una casella di testo modificabile chiamato EditBox. Un utente inserisce un numero nella casella. Si dispone di un pulsante denominato Calcola che ha bisogno di prendere quel numero e aggiungere 5 ad esso. Modificare la funzione di Callback per Calcolare a guardare come questo:

% --- Esegue sul pulsante in Calcola.

Funzione Calculate_Callback (hObject, eventdata, maniglie)

c = ottenere (handles.EditBox, 'String');

c = c + 5;

% HObject gestire calcolare (vedi GCBO)

% Eventdata riservato - da definire in una futura versione di MATLAB

% Maniglie struttura dotata di maniglie e dati utente (vedi GUIDATA)

10 Impostare le proprietà dei componenti GUI in richiamata codice funzione digitando "set (hObject, 'Proprietà', Value)" (senza le virgolette). Sostituire hObject con il manico oggetto, 'Proprietà' con il nome della proprietà che si desidera, racchiuso tra virgolette singole (per esempio, 'String'), e il valore con il valore che si desidera impostare per la proprietà.

Ad esempio, il GUI contiene una casella di testo modificabile chiamato EditBox e un pulsante chiamato Set. Quando l'utente preme Set, si vuole EditBox per visualizzare il numero 2. Modificare la funzione di callback per Set a guardare come questo:

% --- Esegue sul pulsante in Set.

Funzione Set_Callback (hObject, eventdata, maniglie)

set (handles.EditBox, 'String', 2);

% HObject gestire a Set (vedi GCBO)

% Eventdata riservato - da definire in una futura versione di MATLAB

% Maniglie struttura dotata di maniglie e dati utente (vedi GUIDATA)

Consigli e avvertenze

  • Organizza il tuo GUI prima di iniziare a utilizzare GUIDA. Disegnare layout del GUI con carta e matita e prendere appunti su ciò che si desidera che il GUI fare quando l'utente fa clic sui componenti. Layout e programmazione sarà più facile se si dispone di un piano. Leggere i commenti nel codice della GUI generato automaticamente. Essi contengono suggerimenti su come accedere e utilizzare le proprietà dei vari componenti GUI.