环境搭建
支持jar包
JDK8自带JavaFx库,无需额外导入jar包,JDK8下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
IDE
Eclipse luna:http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/lunasr1a
NetBeans:https://netbeans.org/downloads/
搭建好环境后,下面看看如何用JavaFx开发一个最简单的用户界面。
空界面
public class BasicFrame extends Application{
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
primaryStage.setTitle("Basic Frame");
primaryStage.show();
}
}
效果:
添加界面元素
如果要在界面上显示东西,则需要多一个Scene对象,可以通过Stage对象的setScene()方法设置一个Scene。一个Scene对象需要一个根节点,可以把布局作为根节点,为了在后面学习各种控件时方便展示与对比,如无另外说明,则一律使用HBox这个将其子元素横向排列的布局。此时的代码为这样:
public class BasicFrame extends Application{
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
primaryStage.setTitle("Basic Frame");
HBox root = new HBox();
primaryStage.setScene(new Scene(root, 400, 300));
primaryStage.show();
}
}
这时如果要在界面上显示东西,则把要显示的界面元素加到root的子元素列表里即可:
root.getChildren().add(new Label("sample"));
这时的总体代码:
public class BasicFrame extends Application{
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
primaryStage.setTitle("Basic Frame");
HBox root = new HBox();
root.getChildren().add(new Label("sample"));
primaryStage.setScene(new Scene(root, 400, 300));
primaryStage.show();
}
}
效果:
居中显示
如果希望元素可以居中显示,可以为HBox布局增加居中设置:
root.setAlignment(Pos.CENTER);
效果:
至此,用来学习JavaFx各种界面元素的最小支持环境就准备就绪了,从下一篇文章我们开始学习使用JavaFx基本控件。