javafxIniziare con javafx

Osservazioni

JavaFX è una piattaforma software per la creazione e la distribuzione di applicazioni desktop, nonché applicazioni Internet ricche (RIA) che possono essere eseguite su un'ampia varietà di dispositivi. JavaFX è destinato a sostituire Swing come libreria GUI standard per Java SE.

L'IT consente agli sviluppatori di progettare, creare, testare, eseguire il debug e distribuire applicazioni rich client.

L'aspetto delle applicazioni JavaFX può essere personalizzato utilizzando Cascading Style Sheets (CSS) per lo stile (vedi JavaFX: CSS ) e (F) I file XML possono essere utilizzati per strutturare strutture che facilitano la creazione o lo sviluppo di un'applicazione (vedere FXML e controller ) . Scene Builder è un editor visuale che consente la creazione di file fxml per un'interfaccia utente senza scrivere codice.

Versioni

Versione Data di rilascio
JavaFX 2 2011-10-10
JavaFX 8 2014/03/18

Ciao programma mondiale

Il codice seguente crea una semplice interfaccia utente contenente un singolo Button che stampa una String sulla console al clic.

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Alert;
import javafx.scene.control.Alert.AlertType;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class HelloWorld extends Application {

    @Override
    public void start(Stage primaryStage) {
        // create a button with specified text
        Button button = new Button("Say 'Hello World'");

        // set a handler that is executed when the user activates the button
        // e.g. by clicking it or pressing enter while it's focused
        button.setOnAction(e -> {
           //Open information dialog that says hello
           Alert alert = new Alert(AlertType.INFORMATION, "Hello World!?");
           alert.showAndWait();
        });

        // the root of the scene shown in the main window
        StackPane root = new StackPane();

        // add button as child of the root
        root.getChildren().add(button);

        // create a scene specifying the root and the size
        Scene scene = new Scene(root, 500, 300);

        // add scene to the stage
        primaryStage.setScene(scene);

        // make the stage visible
        primaryStage.show();
    }

    public static void main(String[] args) {
        // launch the HelloWorld application.

        // Since this method is a member of the HelloWorld class the first
        // parameter is not required
        Application.launch(HelloWorld.class, args);
    }

}
 

La classe Application è il punto di ingresso di ogni applicazione JavaFX. È possibile avviare una sola Application e questo viene fatto utilizzando

Application.launch(HelloWorld.class, args);
 

Ciò crea un'istanza della classe Application passata come parametro e avvia la piattaforma JavaFX.

Quanto segue è importante per il programmatore qui:

  1. Il primo launch crea una nuova istanza della classe Application ( HelloWorld in questo caso). La classe Application pertanto necessita di un costruttore no-arg.
  2. init() viene chiamato sull'istanza Application creata. In questo caso l'implementazione predefinita da Application non fa nulla.
  3. viene chiamato start per l'istanza Appication e lo Stage primario (= window) viene passato al metodo. Questo metodo viene automaticamente chiamato sul thread dell'applicazione JavaFX (thread della piattaforma).
  4. L'applicazione viene eseguita fino a quando la piattaforma non determina il momento di spegnersi. Questo viene fatto quando l'ultima finestra è chiusa in questo caso.
  5. Il metodo stop è invocato sull'istanza Application . In questo caso l'implementazione da Application non fa nulla. Questo metodo viene automaticamente chiamato sul thread dell'applicazione JavaFX (thread della piattaforma).

Nel metodo start viene costruito il grafico della scena. In questo caso contiene 2 Node : A Button e StackPane .

Il Button rappresenta un pulsante nell'interfaccia utente e StackPane è un contenitore per il Button che ne determina il posizionamento.

Viene creata una Scene per visualizzare questi Node . Infine, la Scene viene aggiunta allo Stage che è la finestra che mostra l'intera interfaccia utente.

Installazione o configurazione

Le API JavaFX sono disponibili come funzionalità completamente integrata di Java SE Runtime Environment (JRE) e Java Development Kit (JDK). Poiché il JDK è disponibile per tutte le principali piattaforme desktop (Windows, Mac OS X e Linux), le applicazioni JavaFX compilate su JDK 7 e versioni successive vengono eseguite su tutte le principali piattaforme desktop. Il supporto per le piattaforme ARM è stato reso disponibile con JavaFX 8. JDK per ARM include i componenti base, grafici e di controllo di JavaFX.

Per installare JavaFX, installare la versione scelta dell'ambiente Java Runtime e del kit di sviluppo Java .

Le funzionalità offerte da JavaFX includono:

  1. API Java.
  2. FXML e Scene Builder.
  3. WebView.
  4. Interoperabilità Swing.
  5. Controlli dell'interfaccia utente e CSS incorporati.
  6. Tema modenese
  7. Funzionalità grafiche 3D.
  8. API Canvas.
  9. API di stampa.
  10. Supporto RTF.
  11. Supporto multitouch.
  12. Supporto Hi-DPI.
  13. Pipeline grafica con accelerazione hardware.
  14. Motore multimediale ad alte prestazioni.
  15. Modello di implementazione dell'applicazione autonomo.