JavaFx和Swing的对比:

     javaFX确实比swing好看些,但没有swing的事件按钮等写法爽快,特别是使用eclipse的matisse开发视图,托拉拽的方式。可javaFX不只是有swing的优点还能支持多媒体,动画等。swing已经很久没有更新了,如果做GUI还是推荐javaFX。虽然javaFX略占cpu,不过现在的服务器或者pc的配置都逐步高了,一点cpu相比效果也不算啥。
桌面开发javaFX的文档和资源相对于swing少些。如果两者你都不熟悉可以直接研究javaFX。JavaFX也支持:CSS、Lambda表达式

 

最简单模板:



package Instance;


import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.Event;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;


public class TestInstance extends  Application{

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        launch(args); //启动程序时,初始化javaFX设置
    }
    @Override
    //javaFX程序入口
    public void start(Stage fx) throws Exception {
        Button btn=new Button("按钮");  //添加控件
        btn.setOnAction(this::handle2);//绑定按钮事件
        //btn.setOnAction(Event ->  System.out.println("Click button2!"));//使用lambda表达式绑定按钮事件
        
        BorderPane bp=new BorderPane(); //设置容器
        bp.setCenter(btn);//将控件添加进容器
        //场景布局
        Scene sc=new Scene(bp, 400, 400);//设置场景,将容器添加进场景中并设置宽高
        
        //显示
        fx.setScene(sc);//添加场景
        fx.setTitle("Hello World"); //设置标题
        fx.show(); //显示
    }
    //点击事件
    public void handle2(ActionEvent event) {
        System.out.println("Click button !");
    }
}



 

 

效果:

javafx javafx和swing_Click