我正在尝试在战舰游戏中进行拖放操作,并完成“拖动”部分,但“拖放”部分无法正常工作。
我已经为拖放目标设置了一个按钮网格,并将setOnDragDropped
设置为以下内容:
for(Node target: playerGrid.getChildren()) {
if(target.getId() != null) {
target.setOnDragDropped(new EventHandler<DragEvent>() {
public void handle(DragEvent event) {
/* data dropped */
/* if there is a string data on dragboard, read it and use it */
Dragboard db = event.getDragboard();
boolean success = false;
if (db.hasString()) {
target.setStyle("-fx-background-color: yellow");
success = true;
}
/* let the source know whether the string was successfully
* transferred and used */
event.setDropCompleted(success);
event.consume();
}
});
}
}
但是,我将Image
拖到每个按钮上,这不会将按钮的颜色更改为黄色。
有什么想法会导致样式保持不变?