Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Interfacce grafiche - Pannello gr.Java, Appunti di Fondamenti di informatica

Appunti università della calabria - ingegneria informatica

Tipologia: Appunti

2018/2019

In vendita dal 12/10/2019

erty89qs
erty89qs 🇮🇹

4.5

(6)

42 documenti

1 / 39

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Fondamenti di informatica: Oggetti e Java
Luca Cabibbo
Interfacce grafiche
Con descrizione della classe usata per il progetto
(le prime slide sono tratte dal materiale fornito con il libro
di testo, in particolare il cap. 27)
Interfacce grafiche1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27

Anteprima parziale del testo

Scarica Interfacce grafiche - Pannello gr.Java e più Appunti in PDF di Fondamenti di informatica solo su Docsity!

Fondamenti di informatica: Oggetti e Java

Interfacce grafiche

Con descrizione della classe usata per il progetto

(le prime slide sono tratte dal materiale fornito con il libro

di testo, in particolare il cap. 27)

1 Interfacce grafiche

Fondamenti di informatica: Oggetti e Java 2 Interfacce grafiche (cap. 27)

Interfacce grafiche

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

La tecnologia Swing

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

Alcuni componenti Swing

n contenitori principali n contenitori intermedi n alcuni componenti atomici

  • applet - finestra di dialogo - frame
  • etichetta
  • pannello (contiene altri componenti)
  • campi di testo - area di testo

Fondamenti di informatica: Oggetti e Java 7 Interfacce grafiche

Un esempio – una frame sullo schermo

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

La classe JLabel

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

La classe JTextField

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

Struttura di un’interfaccia grafica

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

Inizializzazione di un’interfaccia grafica

*/ Inizializza l'interfaccia grafica dell'applicazione

  • e la gestione di eventi. / private void inizializzaGUI() { / pannello, usato come contenitore intermedio / JPanel intermedio; / crea il contenitore intermedio / intermedio = new JPanel();* ... crea il gestore di layout del contenitore intermedio ... ... crea i componenti dell'interfaccia grafica ... ... crea gli ascoltatori di eventi ... ... aggiunge i componenti al contenitore intermedio ... / aggiunge il contenitore intermedio alla frame / this.getContentPane().add(intermedio); }

Fondamenti di informatica: Oggetti e Java 17 Interfacce grafiche

Esempio – una frame con un pulsante e un’etichetta

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

Gestori di layout

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