1
我想知道如何添加一個監聽器或從Scene對象綁定cursorProperty()方法。我試圖檢測當場景被當前的遊標類型所調整的大小。Scene.cursorProperty()如何綁定或添加監聽器
我想知道如何添加一個監聽器或從Scene對象綁定cursorProperty()方法。我試圖檢測當場景被當前的遊標類型所調整的大小。Scene.cursorProperty()如何綁定或添加監聽器
不是最乾淨的方法,但它幫我找到了這是怎麼回事:
@Override
public void start(final Stage stage) {
// .. initialize scene
addCursorChangeListeners(mainPane);
scene.cursorProperty().addListener(new ChangeListener<Cursor>() {
@Override
public void changed(final ObservableValue<? extends Cursor> observable, final Cursor oldValue, final Cursor newValue) {
LOGGER.info("Cursor changed for " + scene + " from: " + oldValue + " to: " + newValue);
}
});
}
private void addCursorChangeListeners(final Parent parent) {
for (final Node child : parent.getChildrenUnmodifiable()) {
child.cursorProperty().addListener(new ChangeListener<Cursor>() {
@Override
public void changed(final ObservableValue<? extends Cursor> observable, final Cursor oldValue, final Cursor newValue) {
LOGGER.info("Cursor changed for " + child + " from: " + oldValue + " to: " + newValue);
}
});
if (child instanceof Parent) {
addCursorChangeListeners((Parent) child);
}
}
}
Node
晚節添加這裏不考慮。
我也在研究類似的問題,你有沒有找到解決方案? – user1285928 2013-07-02 16:06:48