JAVAFX怎么获取窗口句柄
展开全部
1 内部匿名类和Lambda表达式
在之前的例子上对
button.setOnAction(this);
进行更改
button.setOnAction(new EventHandler<ActionEvent>(){
@Override
public void handle(ActionEvent event){
System.out.println("I am an annonymous inner class");
}
});
此时点击按钮调用的时间就是我们后来修改的,不用去检验每个按钮的名字,直接在生成对象之后对象的方法上调用内部类,使得事件发生。"Click me"。
但是后来会出现一个问题。按照上一次的想法我们有很多个按钮的时候会写出if条件结构,然后还要去对应代码中的对象,但是都使用内部匿名类也不方便。
甲骨文公司在Java 8中开始加入了Lambda表达式,此时将这个语句改成如下:
button.setOnAction(e-> System.out.println("heyyyyy, I am Lambda"));
此时控制台对我们点击了按钮进行回应:heyyyyy, I am Lambda,Java自动帮我们处理这个事件。同时也可以改成
button.setOnAction(e->{
System.out.println("heyyyyy, I am Lambda1");
在之前的例子上对
button.setOnAction(this);
进行更改
button.setOnAction(new EventHandler<ActionEvent>(){
@Override
public void handle(ActionEvent event){
System.out.println("I am an annonymous inner class");
}
});
此时点击按钮调用的时间就是我们后来修改的,不用去检验每个按钮的名字,直接在生成对象之后对象的方法上调用内部类,使得事件发生。"Click me"。
但是后来会出现一个问题。按照上一次的想法我们有很多个按钮的时候会写出if条件结构,然后还要去对应代码中的对象,但是都使用内部匿名类也不方便。
甲骨文公司在Java 8中开始加入了Lambda表达式,此时将这个语句改成如下:
button.setOnAction(e-> System.out.println("heyyyyy, I am Lambda"));
此时控制台对我们点击了按钮进行回应:heyyyyy, I am Lambda,Java自动帮我们处理这个事件。同时也可以改成
button.setOnAction(e->{
System.out.println("heyyyyy, I am Lambda1");
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询