当我尝试拖动弹出窗口时,出现异常:
nil
我在SceneBuilder中设计了弹出窗口,并为锚定窗格添加了两种方法:
java.lang.IllegalArgumentException: argument type mismatch
->返回弹出窗口的位置setOnMousePressed
->返回异常。第一种方法可以正常工作,第二种则不能。 尽管已经讨论了该主题,但由于找不到解决方案,因此非常感谢您的帮助。
弹出窗口的代码:
setOnMouseDragged
答案 0 :(得分:0)
Node#onMouseDragged
属性的EventHandler
处理MouseEvent
,而不处理MouseDragEvent
。前者不能转换为后者。
onMouseDragged
public final ObjectProperty<EventHandler<? super MouseEvent>> onMouseDraggedProperty
定义在此
Node
上按下鼠标按钮并拖动时要调用的函数。
使用:
@FXML
void setOnMouseDragged(MouseEvent event) { /* code */ }
应该解决IllegalArgumentException
。
请注意,setOnMouseDragged
和setOnMousePressed
是未设置事件处理程序,而是实际处理其各自事件的方法的奇怪名称。