javafx Tutorial
Iniziare con javafx
Ricerca…
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 |
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:
- API Java.
- FXML e Scene Builder.
- WebView.
- Interoperabilità Swing.
- Controlli dell'interfaccia utente e CSS incorporati.
- Tema modenese
- Funzionalità grafiche 3D.
- API Canvas.
- API di stampa.
- Supporto RTF.
- Supporto multitouch.
- Supporto Hi-DPI.
- Pipeline grafica con accelerazione hardware.
- Motore multimediale ad alte prestazioni.
- Modello di implementazione dell'applicazione autonomo.
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:
- Il primo
launchcrea una nuova istanza della classeApplication(HelloWorldin questo caso). La classeApplicationpertanto necessita di un costruttore no-arg. -
init()viene chiamato sull'istanzaApplicationcreata. In questo caso l'implementazione predefinita daApplicationnon fa nulla. - viene chiamato
startper l'istanzaAppicatione loStageprimario (= window) viene passato al metodo. Questo metodo viene automaticamente chiamato sul thread dell'applicazione JavaFX (thread della piattaforma). - 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.
- Il metodo
stopè invocato sull'istanzaApplication. In questo caso l'implementazione daApplicationnon 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.