javafx - JavaFX:检测具有无效目标的 DragEvent
问题描述
我有一个 DragEvent,它可以处理棋盘游戏中的棋子移动。当一个棋子被抓取时,可能的目标位置被标记为绿色(“selectedPiece = position”->“drawBoard()”),一旦放置棋子,这些标记就会消失(“selectedPiece = null”->“drawBoard()” )。但是,如果棋子掉到棋盘外面,标记会留下来。有没有办法检测无效目标的这种下降?
ImageView getMoveablePiece(Position position)
{
ImageView piece = getPiece(pos);
piece.setOnDragDetected((MouseEvent event) -> {
Dragboard db = piece.startDragAndDrop(TransferMode.MOVE);
ClipboardContent content = new ClipboardContent();
content.putImage(piece.getImage());
db.setContent(content);
selectedPiece = position;
drawBoard();
event.consume();
});
return piece;
}
解决方案
推荐阅读
- java - Java - 避免将对象引用传递给多个地方,同时确保其线程安全
- python - Plotly:如何将水平滚动条添加到 plotly express 图形?
- laravel - Laravel:强制刷新扩展视图
- javascript - 在 Javascript 中创建嵌套数组
- c# - 如何修复:CS1061 错误。我将如何创建属性?
- javascript - Check if all arrays in an object are equal to all arrays in another object
- python - Bitbucket 部署不支持基于 s3 的 lambda 函数
- python - 使用字符串格式化python的列
- r - 将“fitdist”中的学生分布参数转换为自由度
- windows - 变量不会吐出任何东西