0
화면의 특정 부분 안에 위치하도록 이동하는 경우 내 창에서 사각형을 제거하려고합니다. 스레드 "스레드-1539"java.lang.IllegalStateException에서모양을 제거하려고 할 때 JavaFX 오류가 발생합니다.
예외 :
이
은 내가 가진 오류가 발생하지 FX 응용 프로그램 스레드에서; currentThread = Thread-1539 com.sun.javafx.tk.Toolkit.checkFxUserThread (Toolkit.java:238) at com.sun.javafx.tk.quantum.QuantumToolkit.checkFxUserThread (QuantumToolkit.java:400) at javafx .scene.Parent $ 1.onProposedChange (Parent.java:245) com.sun.javafx.collections.VetoableObservableList.remove (VetoableObservableList.java:172) at com.sun.javafx.collections.ObservableListWrapper.remove (ObservableListWrapper. 자바 : com.sun.javafx.collections.VetoableObservableList.remove (VetoableObservableList.java:179에서 263) ) com.leapmotion.leap.LeapJNI.SwigDirector_Listener_onFrame에서 MovementSample $ HandListener.onFrame (MovementSample.java:136) (에서 LeapJNI.java:495)
이 문제의 원인이 코드의 조각은 다음과 같습니다 areOverlapping()가 어떤 논리를 검사 단지 방법이다
if(areOverlapping(sauceRectangle, pizzaInside)) {
if(isHolding == null) {
Group g = (Group) scene.getRoot().getChildrenUnmodifiable().get(1);
g.getChildren().remove(sauceRectangle);
}
}
- 문제가 없다.
내 질문은 : 장면이있는 경우 내 화면에서 사각형을 제거하려면 어떻게합니까? 또한, 내 코드에서 무엇을 잘못 했습니까?
에 대한 자세한 내용은
Platform.runLater
그들을 둘러싸고 :하지 FX 애플리케이션 thread'에. JavaFX 응용 프로그램 스레드에서 수행해야하는 작업을 시도하고 있습니다. 사용자가 새 스레드를 작성하고 사각형을 조작하려고 시도했을 수 있습니다. – ItachiUchiha
아, 그렇습니다. 이 두 스레드를 어떻게 연결합니까? 다른 말로하면, 어떻게 다른 스레드가 그렇게할까요? –
더 명확하게 답변 추가 – ItachiUchiha