javafx Handledning
Komma igång med javafx
Sök…
Anmärkningar
JavaFX är en mjukvaruplattform för att skapa och leverera stationära applikationer, liksom rika internetapplikationer (RIA) som kan köras över en mängd olika enheter. JavaFX är avsett att ersätta Swing som standard GUI-bibliotek för Java SE.
IT gör det möjligt för utvecklare att designa, skapa, testa, felsöka och distribuera rika klientapplikationer.
Utseendet på JavaFX-applikationer kan anpassas med Cascading Style Sheets (CSS) för styling (se JavaFX: CSS ) och (F) XML-filer kan användas för att objektstrukturer som gör det enkelt att bygga eller utveckla ett program (se FXML och Controllers ) . Scene Builder är en visuell redigerare som tillåter skapandet av fxml-filer för ett användargränssnitt utan att skriva kod.
versioner
| Version | Utgivningsdatum |
|---|---|
| JavaFX 2 | 2011-10-10 |
| JavaFX 8 | 2014/03/18 |
Installation eller installation
JavaFX-API: erna är tillgängliga som en helt integrerad funktion i Java SE Runtime Environment (JRE) och Java Development Kit (JDK). Eftersom JDK är tillgängligt för alla större stationära plattformar (Windows, Mac OS X och Linux), körs JavaFX-applikationer kompilerade till JDK 7 och senare också på alla större stationära plattformar. Support för ARM-plattformar har också gjorts tillgängligt med JavaFX 8. JDK för ARM innehåller bas-, grafik- och kontrollkomponenterna i JavaFX.
För att installera JavaFX, installera din valda version av Java Runtime-miljön och Java-utvecklingspaketet .
Funktioner som erbjuds av JavaFX inkluderar:
- Java API: er.
- FXML och Scen Builder.
- WebView.
- Swing interoperabilitet.
- Inbyggda UI-kontroller och CSS.
- Modena tema.
- 3D-grafikfunktioner.
- Canvas API.
- Utskrifts-API.
- Support för rik text.
- Multitouch-stöd.
- Hej-DPI-stöd.
- Hårdvaruaccelererad grafikpipeline.
- Högpresterande mediemotor.
- Fristående modell för implementering av applikationer.
Hej världsprogram
Följande kod skapar ett enkelt användargränssnitt som innehåller en enda Button som skriver ut en String till konsolen vid klick.
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);
}
}
Application är ingångspunkten för alla JavaFX-applikationer. Endast en Application kan startas och detta görs med
Application.launch(HelloWorld.class, args);
Detta skapar en instans av Application passeras som parameter och startar JavaFX-plattformen.
Följande är viktigt för programmeraren här:
- Första
launchskapar en ny instans avApplication(HelloWorldi detta fall).Applicationbehöver därför en no-arg-konstruktör. -
init()kallas på den skapadeApplication. I detta fall gör standardimplementeringen frånApplicationingenting. -
startkallas förAppicationoch det primäraStage(= fönstret) överförs till metoden. Den här metoden kallas automatiskt på JavaFX Application thread (Platform thread). - Programmet körs tills plattformen bestämmer att det är dags att stänga av. Detta görs när det sista fönstret stängs i detta fall.
-
stopanropas iApplication. I detta fall gör implementeringen frånApplicationingenting. Den här metoden kallas automatiskt på JavaFX Application thread (Platform thread).
I start scenen graf konstrueras. I det här fallet innehåller det två Node : En Button och en StackPane .
Button representerar en knapp i användargränssnittet och StackPane är en behållare för Button som bestämmer dess placering.
En Scene skapas för att visa dessa Node . Slutligen Scene läggs till Stage som är det fönster som visar hela UI.