introduction jfc
Questo tutorial discute le basi della programmazione GUI (Graphical User Interface) e Java Foundation Classes o JFC in Java:
Nei nostri tutorial precedenti, abbiamo trattato argomenti che vanno dalle basi di tipi di dati, variabili, processi decisionali e costrutti di loop simili a Java, ecc. Fino ad array, raccolte e metodi in Java.
Abbiamo anche discusso il concetto di multithreading e le eccezioni. Successivamente, abbiamo appreso il supporto Java OOPS. Utilizzando tutti questi concetti, possiamo sviluppare applicazioni di alto livello in Java che sono riutilizzabili e robuste oltre che autonome.
=> Controlla qui per vedere i tutorial di formazione su Java dalla A alla Z.
In questo tutorial, inizieremo la nostra discussione sullo sviluppo grafico di applicazioni in Java. Come tutti gli altri concetti, Java fornisce numerose classi grafiche riutilizzabili e APIS in modo che possiamo sviluppare la nostra GUI (Graphical User Interface).
test di unità test di integrazione test di sistema
Cosa imparerai:
Che cos'è un'interfaccia utente grafica in Java
Graphical User Interface o semplicemente chiamata 'GUI' è un termine generico utilizzato nel mondo del software. Una GUI rappresenta un'applicazione che ha un display visivo per l'utente con controlli facili da usare. Una GUI è generalmente costituita da componenti grafici come finestre, cornici, pulsanti, etichette, ecc.
Possiamo usare questi componenti per interagire con il sistema o anche con il mondo esterno. Java fornisce molte API e classi riutilizzabili utilizzando le quali possiamo sviluppare applicazioni GUI. Uno dei kit più vecchi forniti da Java è 'Abstract Windowing ToolKit' o AWT. Tutte le API o componenti più recenti come Swing; JavaFX, ecc. Sono basati su questo AWT.
I programmi per console che abbiamo scritto finora sono altrettanto importanti, ma dobbiamo sapere che tutte le più recenti applicazioni desktop moderne sono abilitate graficamente. Ciò significa che hanno una GUI pronta per l'uso che rende più facile per l'utente finale utilizzare l'applicazione con un clic del mouse.
Nota che scrivere GUI non è facile come disegnare alcune forme o includere immagini. La GUI contiene una sequenza di attività che attivano anche alcuni eventi che a loro volta eseguono alcune azioni invocando un componente o parte di un componente come se facendo clic su un pulsante attiviamo alcune azioni.
Quindi un'applicazione GUI è un framework costituito da componenti grafici ed eventi che possono essere attivati su questi componenti e le azioni che vengono eseguite come risultato del trigger di eventi.
I framework di solito forniscono classi e componenti riutilizzabili precompilati che possiamo trascinare e rilasciare nell'area di disegno e quindi associare gli eventi e le azioni a questi componenti.
Java fornisce i seguenti framework principali.
Java fornisce i seguenti framework per la programmazione GUI:
- Toolkit per finestre astratte: Questo è il framework più vecchio in Java ed è stato introdotto per la prima volta in JDK 1.0. La maggior parte dei componenti AWT sono ormai obsoleti e vengono sostituiti da componenti Java swing.
- API Swing: Questo è un insieme di librerie grafiche sviluppate sopra il framework AWT e fa parte di Java Foundation Classes (JFC). Swing ha un'architettura modulare in cui possiamo utilizzare plug-and-play per i componenti.
- JavaFX: Il framework più recente è disponibile da Java 8 in poi.
Esistono vari framework grafici di terze parti come Standard Widget Toolkit (SWT) di Eclipse o Google Web Toolkit (GWT) utilizzati su Android.
Java Foundation Classes (JFC)
Java fornisce una serie di caratteristiche e funzionalità per lo sviluppo di interfacce utente grafiche o GUI. Questo insieme di funzionalità è noto come Java Foundation Classes o JFC.
Utilizzando JFC possiamo aggiungere ricche funzionalità grafiche alle applicazioni e anche renderle più interattive. JFC contiene una serie di componenti grafici che possono essere facilmente collegati alla nostra applicazione e programmati secondo i nostri requisiti. Ma la programmazione di questi componenti di solito richiede solo poche righe di codice.
JFC contiene classi dai pacchetti java.awt e javax.swing. Oltre a questi, contiene anche classi relative a Java 3D, Java 2D, Java Accessibility, ecc. JFC è sincronizzato con il modello di oggetti e componenti di Java e quindi è facile da usare.
Il diagramma seguente riepiloga i vari componenti in JFC.
Come mostrato sopra, JFC contiene classi AWT e Swing. Discuteremo ciascuno di questi mentre procediamo con i tutorial Java AWT e Java Swing. JFC fornisce anche vari metodi che possiamo utilizzare all'interno della nostra applicazione.
Alcuni dei metodi comunemente usati sono:
Metodo | Descrizione |
---|---|
public void add (Componente c) | Aggiunge un componente al componente genitore invocando il metodo. |
public void setSize (int larghezza, int altezza) | Imposta le dimensioni di un componente con una larghezza e un'altezza specificate. |
public void setLayout (LayoutManager m) | Imposta il layout manager specificato per questo componente. |
public void setVisible (boolean b) | Imposta la visibilità del componente in base al valore booleano. Per impostazione predefinita, la visibilità è falsa. |
Ora passiamo a discutere i componenti della GUI a livello generale. Quindi, nei nostri tutorial successivi, discuteremo specificamente dei pacchetti AWT e Swing e dei loro componenti.
Componenti della finestra
Sappiamo che il contenitore principale di qualsiasi applicazione GUI è una finestra che può contenere uno o più frame.
Una GUI generalmente include gli elementi dell'interfaccia utente o gli elementi visualizzati come parte della GUI nell'applicazione.
Questi componenti della finestra sono i seguenti:
- Elementi informativi: Gli elementi o componenti che ci forniscono informazioni come etichette, icone, banner o finestre di dialogo dei messaggi.
- Controlli di input: Campi di testo, pulsanti, elenchi a discesa, caselle di controllo, pulsanti di opzione, ecc. Sono i controlli di input che ci consentono di leggere i dati dall'utente.
- Componenti di navigazione: Componenti come il menu, le barre laterali, i breadcrumb, ecc. Ci aiutano a navigare nell'applicazione.
Descriviamo ora alcuni componenti importanti nella GUI.
Cornice in Java
Una cornice è una finestra grafica visibile sullo schermo. Un frame può essere visto come un componente ma poiché forma una finestra fisica che possiamo vedere sullo schermo, viene trattato in modo diverso rispetto agli altri componenti. Una cornice può avere altri componenti grafici come pulsanti, campi di testo, ecc. E anche pannelli.
I frame hanno anche metodi che non sono supportati da altri componenti. 'Java.awt.Frame' rappresenta una classe in AWT mentre JFrame è la classe contenuta nel pacchetto Java Swing che rappresenta un Frame.
domande e risposte dell'intervista di supporto desktop pdf
Quindi qualsiasi applicazione GUI inizierà costruendo un oggetto JFrame che forma la finestra principale. Una volta creato l'oggetto JFrame, possiamo impostare la sua proprietà visible su true chiamando setVisible (‘true’). Quindi possiamo trascinare e rilasciare gli altri componenti in questo frame.
Tutti i componenti della GUI, inclusi i frame, hanno alcune proprietà comuni poiché fanno parte di una gerarchia di ereditarietà comune mostrata sopra. Quindi possiamo dire che c'è un potente caso di condivisione del codice nel pacchetto Java Swing.
La figura seguente mostra una tipica finestra di frame nell'editor della GUI.
Come possiamo vedere dalla figura sopra, la finestra più esterna nell'editor di progettazione (contrassegnata da una freccia rossa più piccola) è la cornice. All'interno di questo telaio, abbiamo vari altri componenti o componenti figlio del telaio.
Questo è evidente dal pannello sul lato sinistro che mostra una struttura ad albero dei componenti. Come contrassegnato da una freccia rossa più grande, JFrame è il componente principale e quindi tutti gli altri componenti sono i suoi componenti figlio.
JPanel In Java
Il contenitore JPanel fa parte del pacchetto Swing in Java. JPanel memorizza un gruppo di componenti. JPanel ha organizzato i componenti utilizzando il layout impostato da esso. Vari layout possono aiutare JPanel a organizzare meglio i componenti.
JPanel è considerato un elemento di base per la disposizione dei componenti in un telaio o all'interno di altri pannelli. Un'applicazione GUI di solito ha Frame come finestra principale e uno o più pannelli al suo interno per contenere e organizzare vari componenti.
L'immagine seguente mostra un semplice esempio di pannello all'interno di un frame.
Come mostrato sopra, un contenitore del pannello è incorporato in un contenitore della finestra Frame. Possiamo avere uno o più pannelli o anche un pannello all'interno di un pannello. Quindi possiamo applicare qualsiasi gestore di layout al pannello che organizzerà i componenti o gli elementi all'interno del pannello. Il gestore di layout predefinito per JPanel è 'FlowLayout'.
Layout della GUI in Java
Il contenitore Java utilizza un layout automatico dei componenti sullo schermo. Ma le dimensioni e le posizioni dei componenti sono curate dal 'layout manager'. Il layout manager è impostato per un contenitore in fase di progettazione. Può anche essere modificato dinamicamente.
I layout comuni utilizzati nella GUI Java sono:
# 1) BorderLayout
Il layout del bordo divide il componente in 5 aree come mostrato di seguito.
Di queste, 4 aree, ovvero 'Nord', 'Sud', 'Est' e 'Ovest', non sono ridimensionabili. L'area 'Centro' è ridimensionabile. Si noti che ogni area ha un limite di un solo componente e i pannelli possono essere utilizzati per contenere più componenti.
# 2) FlowLayout: Questo layout viene utilizzato per contenere più componenti. Più componenti sono disposti orizzontalmente e si avvolgono se la larghezza del contenitore è esaurita. Inoltre, i componenti vengono visualizzati in ordine da sinistra a destra.
# 3) BoxLayout: Utilizzando il layout della scatola, i componenti sono disposti verticalmente o orizzontalmente. Questa disposizione del layout della scatola è indipendente dalle dimensioni del contenitore. I componenti nel contenitore sono impostati in modo che riempiano il contenitore e abbiano dimensioni identiche.
Questi erano alcuni dei componenti importanti e comuni che abbiamo nello sviluppo della GUI. Nei nostri successivi tutorial su AWT e Swing, entreremo nei dettagli degli altri componenti forniti da questi pacchetti.
elenco collegato circolare c ++
Domande frequenti
D # 1) Cos'è la programmazione GUI?
Risposta: I programmi sviluppati utilizzando componenti grafici che interagiscono con il computer utilizzando il dispositivo di puntamento ed è event-driven, cioè esegue alcune azioni quando vengono attivati determinati eventi, e si chiama programmazione GUI.
Una programmazione GUI utilizza framework GUI in cui possiamo collegare e utilizzare direttamente componenti grafici.
D # 2) Quale GUI usare con Java?
Risposta: Java supporta alcuni dei migliori framework che possiamo utilizzare per sviluppare applicazioni GUI come mostrato di seguito:
- JavaFX.
- Swing GUI Java.
- AWT: Abstract Windowing Toolkit.
- SWT - Toolkit widget standard.
- Apache Pivot.
- SwingX.
- JGoodies.
- QtJambi.
D # 3) Quali sono i vantaggi di una GUI?
Risposta: Il programma GUI rende le applicazioni interattive, intuitive e più facili da usare e imparare. Poiché forniscono all'utente immagini grafiche, le azioni hanno più effetto e quindi otteniamo un feedback visivo immediato sull'applicazione.
D # 4) Cos'è l'API JavaFX?
Risposta: JavaFX è l'ultima libreria Java scritta nel codice Java nativo e contiene classi e interfacce. JavaFX può essere utilizzato per progettare applicazioni GUI nelle versioni Java successive a Java 8.
D # 5) Java è buono per la GUI?
Risposta: Sebbene Java abbia più strumenti per sviluppare applicazioni GUI insieme al miglior supporto, non è veloce ed efficiente come la libreria MFC di C ++ che ha quasi tutte le funzionalità per sviluppare applicazioni GUI avanzate.
Conclusione
In questo tutorial, abbiamo esplorato la programmazione GUI in Java. Abbiamo introdotto alcuni dei concetti importanti della programmazione GUI in Java e abbiamo anche visto una panoramica dei framework GUI supportati da Java. Abbiamo discusso la panoramica della libreria JFC.
=> Controlla TUTTI i tutorial Java qui.
Lettura consigliata
- Introduzione al linguaggio di programmazione Java - Tutorial video
- Java OOP: Introduzione alla programmazione orientata agli oggetti in Java
- Tutorial Java Float con esempi di programmazione
- Java Double - Tutorial con esempi di programmazione
- Tutorial Java SWING: contenitore, componenti e gestione degli eventi
- Java Reverse String: tutorial con esempi di programmazione
- Componenti Java: piattaforma Java, JDK, JRE e Java Virtual Machine
- Il metodo compareTo della stringa Java con esempi di programmazione