() { public void handle(ActionEvent event) { System.out.println("别点了"); } });//按钮改变事件,被点击,或者按钮消失 b1.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<"> () { public void handle(ActionEvent event) { System.out.println("别点了"); } });//按钮改变事件,被点击,或者按钮消失 b1.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<"> () { public void handle(ActionEvent event) { System.out.println("别点了"); } });//按钮改变事件,被点击,或者按钮消失 b1.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<">
package Main;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
import javafx.scene.input.MouseButton;
import javafx.scene.input.MouseEvent;
import javafx.stage.Stage;

public class Main extends Application
{

    public static void main(String[] args)
    {
        launch(args);
    }

    public void start(Stage primaryStage) throws Exception
    {

        Button b1 = new Button("我是一个按钮哦");
        b1.setLayoutY(30);
        b1.setLayoutX(30);
        b1.setPrefWidth(200);
        b1.setPrefHeight(100);

        b1.setOnAction(new EventHandler<ActionEvent>() {

            public void handle(ActionEvent event) {
                System.out.println("别点了");
            }
        });//按钮改变事件,被点击,或者按钮消失

        b1.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() {
           @Override
           public void handle(MouseEvent event ) {
               if (event.getClickCount()==2 && event.getButton().name().equals(MouseButton.PRIMARY.name()))
               {//鼠标左键点击两次才触发
                   System.out.println("双击事件");
               }

           }
       });//鼠标监听
        b1.setOnKeyPressed(new EventHandler<KeyEvent>() {

            public void handle(KeyEvent event)
            {

                System.out.println("按下了"+event.getCode().getName());
            }
        });//键盘监听

        b1.setOnKeyReleased(new EventHandler<KeyEvent>() {
            @Override
            public void handle(KeyEvent event)
            {
                System.out.println("松开了"+event.getCode().getName());
                if(event.getCode().getName().equals(KeyCode.ENTER.getName()))
                {

                    primaryStage.close();
                }
            }
        });//按下enter就会关闭窗口键盘监听

        Group group = new Group();

        group.getChildren().addAll(b1);
        Scene scene =  new Scene(group);

        primaryStage.setScene(scene);
        primaryStage.setTitle("javafx Button");
        primaryStage.setHeight(800);
        primaryStage.setWidth(800);
        primaryStage.show();
    }
}

运行结果

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/83b07ff2-8506-4e3b-87bb-e1a5e33264a0/javafx5.gif