Se sei un programmatore Java esperto, è stato indubbiamente lavorato con Swing per creare interfacce utente. Oracle non ha completamente abbandonato l’oscillazione: non è in disuso, e le applicazioni swing continuano a funzionare. Ma non funziona di più per migliorare l’oscillazione, e Oracle ha reso chiaro che Javafx è il futuro.
Qui ci sono dieci differenze di base tra JAVAFX e SWING.
in JAVAFX, tutto Il mondo è uno scenario
in swing, la classe che contiene i componenti dell’interfaccia utente è chiamata quadro e definita dalla classe JFrame. Una trama è essenzialmente una finestra vuota a cui è possibile aggiungere un pannello, che funge da contenitore per gli elementi dell’interfaccia utente. Un pannello è definito dalla classe JPannel.
Un’applicazione swing è in realtà una classe che espande la classe JFrame. Per visualizzare i componenti dell’interfaccia utente, aggiungere componenti a un jpanel e quindi aggiungere il pannello alla cornice.
javafx utilizza la metafora di un teatro per modellare i contenitori di alto livello di un’applicazione. Uno scenario (definito dallo scenario di classe) rappresenta il contenitore di livello più alto – di solito una finestra, ma in alcuni sistemi operativi, la fase può rappresentare l’intera superficie dello schermo. I controlli individuali e altri componenti che formano l’interfaccia utente sono contenuti in una scena (definita dalla scena della classe). Un’applicazione può avere più di una scena, ma solo una delle scene può essere visualizzata sul palco in un dato momento.
Una scena contiene una scena grafica, che è il concetto più importante in JAVAFX. Il grafico della scena è una raccolta di tutti gli elementi che costituiscono un’interfaccia utente – gruppi, disegni, controlli e forme. Questi oggetti sono chiamati nodi e sono tutti derivati dal nodo di classe. Il nodo di classe ha molte funzionalità e funzionalità utili che vengono eseguite automaticamente a qualsiasi oggetto che è possibile aggiungere alla tua interfaccia utente. Ad esempio, il nodo di classe definisce un metodo setotate che consente di ruotare qualsiasi nodo sullo scenario grafico.
in javafx, i controller di distribuzione sono nodi
In Swing, un design è associato a un JPanel. L’alto livello JPannel offre il design di base per il telaio. Se si desidera nire ulteriori disegni nel design ad alto livello, è necessario creare jpanel aggiuntivi, impostare i tuoi progetti associati, quindi aggiungerli al layout di livello più alto.
Video: AWT VS Swing vs JAVAFX
In JAVAFX, i progetti sono sottoclassi del nodo di classe e controlli e moduli. I disegni contengono una raccolta di nodi, e qualsiasi nodo contenuto in una disposizione può essere qualsiasi tipo di nodo: un controllo, una forma o un’altra disposizione. Questo schema è molto meno ingombrante dell’Associazione oscillazione dei progetti di pannelli.
JAVAFX ha il controllo dell’evento migliorato
sia JAVAFX che l’evento utilizza la gestione dell’oscillazione per rispondere alla voce dell’utente degli eventi. Tuttavia, ti renderai conto che gli eventi in JavaFX sono progettati meglio e più coerenti dei suoi equivalenti swing. Ma la più grande ragione per la manipolazione degli eventi è migliorata in JAVAFX è dovuta alla sua dipendenza dalle proprietà.
Javafx supporta le proprietà
javafx è compatibile con i concetti di proprietà e utilizzano le proprietà estensivamente attraverso le tue lezioni. In breve, una proprietà è una variabile il cui valore può essere osservato. È possibile registrare un ascoltatore con qualsiasi proprietà, che consente di scrivere codice che viene attivato automaticamente ogni volta che la proprietà cambia. Inoltre, le proprietà possono essere collegate insieme, il che significa che se si modifica il valore di una proprietà, l’altro valore della proprietà cambia automaticamente con esso.
Perché quasi tutte le caratteristiche degli elementi dell’interfaccia utente sono spediti attraverso le proprietà, JavaFX fornisce il controllo degli eventi insolito in oscillazione. Ad esempio, in JAVAFX, è possibile collegare un rilevatore di eventi per il colore in una forma. Se il modulo cambia colore, viene eseguito il codice del rilevatore di eventi. Potresti non avere un uso per la capacità, ma può essere utilizzato se necessario.
JAVAFX è personalizzabile con CSS
Una delle migliori funzionalità JAVAFX è che è possibile controllarlo il formato con fogli di stile a cascata (CSS). Quasi tutti gli aspetti dell’aspetto dell’interfaccia utente possono essere stabiliti da una regola di stile e possono essere facilmente consentiti per selezionare quale dei vari fogli di stile disponibili per applicare sulla scena. Pertanto, è possibile modificare tutti gli aspetti dell’applicazione con una singola chiamata al metodo.
javafx ha un controllo più coerente
in generale, scoprirai che la gerarchia di controllo JAVAFX è più completa dell’oscillazione di. Entrambi hanno tutti i comandi di base – pulsanti, caselle di controllo, tabelle combinate e simili. Ma JavaFX ha diversi controlli interessanti che non hanno, come il controllo del titolare collappe per il controllo e la fisarmonica di controllo che organizzano più controlli del titolaro in una pila. E il fatto che tutti questi controlli siano personalizzabili utilizzando CSS dà loro un grande vantaggio rispetto all’aw swing.
javafx ha effetti speciali
javafx.scene.exfect package contiene un numero di classi che tu può facilmente applicare effetti speciali a qualsiasi nodo sullo scenario grafico. Queste classi consentono di applicare facilmente ombre, riflessioni, sfocature e altri interessanti effetti visivi che possono trasformare l’aspetto della loro interfaccia utente.
L’animazione è più facile in javafx
l’animazione è possibile in oscillazione, Ma il saldo non fornisce alcun supporto diretto ad esso. Per incoraggiare un componente swing, è necessario configurare i propri timer e creare la propria logica per eseguire l’animazione.
Video: Javaone 2012: Javafx e ricca esperienza utente
al contrario, Javafx ha incorporato nel supporto per le animazioni sofisticate che possono essere applicate a qualsiasi nodo sullo scenario grafico. È possibile utilizzare uno dei vari tipi di transizione incorporata per eseguire animazioni comuni come cast, rotazioni o percorsi di movimento. Oppure, è possibile utilizzare le classi chiave fotogrammi e cronologia per configurare facilmente le animazioni personalizzate.
javafx è compatibile con i moderni dispositivi touch
L’oscillazione manca il supporto per i moderni dispositivi touch. Al contrario, JAVAFX ha incorporato nel supporto per gesti tattili comuni, come spostamento, diapositive, rotazione e zoom. La gestione di questi eventi in JAVAFX è facile come la gestione di qualsiasi altro tipo di evento: devi solo installare un rilevatore di eventi nell’evento touch e quindi scrivere il codice che risponde correttamente.
javafx no Ha equivalente a JoptionPane
non sarebbe giusto riempire completamente questo elenco di dieci punti con differenze che preferiscono chiaramente JAVAFX. Ecco un piccolo fastidio di JAVAFX: non ha incorporato equivalente alla classe JoptionPane, che è molto utile per la visualizzazione di messaggi di avviso brevi o ottenere un ingresso semplice per l’utente. In JAVAFX, devi creare il tuo equivalente a questa classe utile.