JavaFX上手--第1天
1.第一个JavaFX Application
JavaFX 使用Java来制作可视化图形,可以做动画和3D效果,JavaFX从JDK中直接使用。
package application;
import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.layout.BorderPane;
public class Main extends Application {
@Override
public void start(Stage primaryStage) {
try {
BorderPane root = new BorderPane();
Scene scene = new Scene(root,400,400);
scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());
primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
}
创建完毕,得到一个空的窗口。Main从Application中继承过来,launch(args);进入程序,然后一切准备好就进入Start。
entire window ---Stage
content of the window --- scene
在start方法中加入以下的语句
Button button = new Button();
button.setText("Click me");
StackPane layout = new StackPane();
layout.getChildren().add(button);
Scene scene = new Scene(layout,400,400);
调用了StackPane类和Scene类来实现视图,此时可以得到一个只有一个"Click me"按钮的窗口。Button加到StackPane上,然后将StackPane加到Scene上,最后调用Scene的Show()显示窗口。
2、HandleUserEvent
现在要点击这个Button了,添加 button.setOnAction(this);,添加点击的事件此时让程序对于点击做出反应。
public void start(Stage primaryStage){
primaryStage.setTitle("Hello OOOO");
button = new Button();
button.setText("Click me");
button.setOnAction(this);
StackPane layout = new StackPane();
layout.getChildren().add(button);
Scene scene = new Scene(layout,400,400);
primaryStage.setScene(scene);
primaryStage.show();
}
@Override
public void handle(ActionEvent arg0) {
// TODO Auto-generated method stub
if(arg0.getSource()==button){
System.out.println(")00000)))):)))");
}
}
可以在Java的终端中得到下列的信息:
)00000)))):)))
)00000)))):)))
)00000)))):)))
)00000)))):)))
也就是我们要的点击了按钮,然后输出相关信息