JavaFX上手--第1天

Posted 兴趣使然的博客小站

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)))):)))

也就是我们要的点击了按钮,然后输出相关信息

 

以上是关于JavaFX上手--第1天的主要内容,如果未能解决你的问题,请参考以下文章

监控系统实践第12天:5天上手Laravel8.5之路由篇(1/5)

监控系统实践第13天:5天上手Laravel8.5之中间件篇(2/5)

JavaFX窗口拖动

监控系统实践第15天:5天上手Laravel8.5之HTTP请求篇(4/5)

监控系统实践第15天:5天上手Laravel8.5之HTTP请求篇(4/5)

监控系统实践第14天:5天上手Laravel8.5之控制器篇(3/5)