































Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Appunti università della calabria - ingegneria informatica
Tipologia: Appunti
1 / 39
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!
































Fondamenti di informatica: Oggetti e Java
1 Interfacce grafiche
Fondamenti di informatica: Oggetti e Java 2 Interfacce grafiche (cap. 27)
Le applicazioni vengono normalmente utilizzate dagli utenti in modo interattivo, mediante un’interfaccia grafica n l’interfaccia grafica di un’applicazione comprende un insieme di componenti grafici n l’utente usa l’applicazione interagendo con la sua interfaccia utente
Fondamenti di informatica: Oggetti e Java 4 Interfacce grafiche
Le Swing delle API di Java supportano la definizione di interfacce grafiche n package java.awt e javax.swing n una GUI Swing è composta da n un contenitore principale – applet ( JApplet ), frame ( JFrame ) o finestra di dialogo ( JDialog ) n un pannello ( JPanel ) – usato come contenitore intermedio n componenti atomici n altri oggetti di supporto
Fondamenti di informatica: Oggetti e Java 5 Interfacce grafiche
n contenitori principali n contenitori intermedi n alcuni componenti atomici
Fondamenti di informatica: Oggetti e Java 7 Interfacce grafiche
import javax.swing.JFrame; /* Applicazione che visualizza una frame sullo schermo. / public class FrameSemplice extends JFrame { / Crea una nuova FrameSemplice. / public FrameSemplice() { super(); this.setTitle("Una frame semplice"); this.setSize(300, 100); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } / L'applicazione FrameSemplice. / public static void main(String[] args) { / crea una nuova FrameSemplice */ new FrameSemplice(); } }
Fondamenti di informatica: Oggetti e Java 8 Interfacce grafiche Componenti I componenti di un’interfaccia grafica sono oggetti polimorficamente di tipo Component n ciascuna tipologia di componente è rappresentata da una sotto-classe di Component ( JComponent ) n i componenti sono oggetti istanza di tali classi
Fondamenti di informatica: Oggetti e Java 10 Interfacce grafiche
Un’ etichetta è un’area rettangolare, con un’etichetta o un’icona n classe JLabel n costruttori n JLabel(String s) n JLabel(Icon i) n metodi n void setText(String s) n String getText()
Fondamenti di informatica: Oggetti e Java 11 Interfacce grafiche
Un campo di testo è un’area per visualizzare una linea di testo editabile n classe JTextField n costruttori n JTextField() crea un nuovo campo di testo, inizialmente vuoto n JTextField(String s) crea un nuovo campo di testo inizialmente contenente il testo s n JTextField(int n) crea un nuovo campo di testo di lunghezza n , inizialmente vuoto n metodi n void setText(String s) n String getText() n String getSelectedText() – accede alla porzione di testo selezionata nel campo di testo n void setEditable(boolean b) abilita ( true ) o disabilita ( false ) la possibilità di modificare il campo di testo
Fondamenti di informatica: Oggetti e Java 13 Interfacce grafiche Struttura di un’interfaccia grafica Per utilizzare un componente in un’interfaccia grafica, bisogna n creare il componente n inserire il componente nell’interfaccia grafica n i componenti non vanno inseriti direttamente nel contenitore principale per l’interfaccia grafica, ma vanno piuttosto inseriti in un pannello usato come contenitore intermedio n dopo aver inserito tutti i componenti nel contenitore intermedio, il contenitore intermedio va inserito nel contenitore principale
Fondamenti di informatica: Oggetti e Java 14 Interfacce grafiche
import javax.swing.; / L’applicazione Swing** ApplicazioneX****. / public class ApplicazioneX extends JFrame { ... variabili d'istanza per i componenti dell'interfaccia ... ... altre variabili d'istanza ... ... costruttore ... ... metodo per l'inizializzazione dell'interfaccia ... ... altri metodi ... / L'applicazione ApplicazioneX****. / public static void main(String[] args) { / crea ed avvia una nuova ApplicazioneX */ new ApplicazioneX (); } }
Fondamenti di informatica: Oggetti e Java 16 Interfacce grafiche
*/ Inizializza l'interfaccia grafica dell'applicazione
Fondamenti di informatica: Oggetti e Java 17 Interfacce grafiche
Viene ora mostrata la definizione di un’interfaccia basata su frame e contenente un pulsante e un’etichetta n dichiarazione delle variabili d’istanza per i componenti private JButton pulsante; // un pulsante private JLabel etichetta; // un’etichetta n istruzioni nel corpo del metodo inizializzaGUI() / crea i componenti dell'interfaccia / pulsante = new JButton("Un pulsante"); etichetta = new JLabel("Un’etichetta"); / aggiunge i componenti al contenitore intermedio / jPanel.add(pulsante); jPanel.add(etichetta);
Fondamenti di informatica: Oggetti e Java 19 Interfacce grafiche Gestori di layout Per inserire un componente in un contenitore viene utilizzato il metodo add(Component c) n non si specifica la posizione che il componente deve occupare nel contenitore n questa posizione è specificata in modo indiretto e dipende n dal gestore di layout associato al contenitore n dall’ordine di inserimento dei contenitore n da eventuali ulteriori parametri
Fondamenti di informatica: Oggetti e Java 20 Interfacce grafiche
I gestori di layout sono oggetti polimorficamente di tipo LayoutManager n FlowLayout n i componenti sono disposti come un testo in una pagina, su linee che vanno da sinistra a destra n è il gestore di layout di default n GridLayout n dispone i componenti, tutti della stessa dimensione, su una griglia rettangolare n BorderLayout n il contenitore è organizzato in cinque aree (centro, alto, basso, sinistra e destra) e ciascun componente va esplicitamente disposto in una di queste cinque aree n GridBagLayout