学JavaFX的肯定都是有java基础的 所以都是想单纯的把像javaweb那样 什么单机事件啊 双击事件啊 键盘按下事件啊 表单验证什么的 自己找了一圈总结一下
1.单机事件
首先在MyController中添加个方法跟java一样 这里值得注意的是方法中的参数ActionEvent 必须要加 否则会报错ActionEvent类里 包含了单机事件 public void alert(ActionEvent event) throws IOException { String info="这是alert"; Alert alert = new Alert(AlertType.INFORMATION, info, new ButtonType("确定",ButtonData.YES)); alert.setHeaderText(null); alert.setTitle("提示"); alert.show(); }
然后在Java Scene Builder中 将 按钮去事件绑定(如果On Action找不到你的方法 说明方法没有加参数 或者参数添加错误)
运行后 点击登录即可 触发alert方法 弹出alert
2. 双击事件
同样先创建个方法 参数是MouseEvent 是鼠标事件的父类 只要是关于鼠标的事件 基本上都用MouseEvent(单机事件除外 //单机两次 public void ClickTwo(MouseEvent event){ if(event.getClickCount()==2&&event.getButton().name().equals("PRIMARY")){ System.out.println("你用左键点击了两次"); } }
然后绑定按钮 判断是否用的左键点击两次getClickCount==2 如果不判断的话 鼠标三个键点击两次都会显示点击两次