【发布时间】:2013-12-15 17:57:45
【问题描述】:
这是我的代码:
Button start = new Button("Start");
start.setPrefHeight(100d);
start.setMaxWidth(Double.MAX_VALUE);
start.setOnMouseClicked(new EventHandler<MouseEvent>(){
@Override
public void handle(MouseEvent arg0) {
//ss.startServer();
System.out.println("adfasddasfrwgafsdasdf");
}
});
在 Eclipse 时,该消息不会打印在控制台上!我希望在释放鼠标时触发事件。我做错了什么?
经过进一步调查,我意识到如果我在另一个节点上有另一个 mouseReleased 事件,它会触发更多事件!...为什么会这样? 例如,这是我正在使用的代码,当我按下开始按钮时,它会打印开始并重新加载!
start.setOnMouseReleased(new EventHandler<MouseEvent>(){
@Override
public void handle(MouseEvent arg0) {
ss.startServer();
System.out.println("Start");
arg0.consume();
}
});
Button stop = new Button("Stop");
stop.setPrefHeight(100d);
stop.setMaxWidth(Double.MAX_VALUE);
stop.setOnMouseReleased(new EventHandler<MouseEvent>(){
@Override
public void handle(MouseEvent event) {
sc.stopServer();
System.out.println("Stop");
event.consume();
}
});
Button reload = new Button("Reload");
reload.setPrefHeight(100d);
reload.setMaxWidth(Double.MAX_VALUE);
start.setOnMouseReleased(new EventHandler<MouseEvent>(){
@Override
public void handle(MouseEvent some) {
sc.reloadServer();
System.out.println("Reload");
some.consume();
}
});
停止按钮正常工作! 无论如何,如果另一段代码有效,那就是(http://pastebin.com/4f55R2gN)
【问题讨论】:
标签: java events button user-interface javafx