2017-03-05 3 views
0
button.setOnAction(e->{ 
    Platform.runLater(() -> { 
    new Main().start(new Stage());   
    stage.close(); 
    }); 
}); 

단추를 누른 다음 현재 단계를 닫고 새 단계를 표시하고 싶지만 화면이 Mac에서 깜박입니다. 스테이지를 닫는 대신 화면을 변경해야합니까? 고마워요. 고마워요.macaf에서 깜박이는 javafx를 해결하는 방법

+0

주제에서 벗어나지 만, 1. 이벤트 처리기가 이미 FX 응용 프로그램 스레드에서 호출되고 있으므로 'Platform.runLater (...)'의 이벤트 처리기에 코드를 래핑 할 필요가 없습니다. 2. 당신은 (당신이 응용 프로그램을 시작하지 않습니다)'시작 (..)'자신을 호출해서는 안됩니다. 리 팩터를 사용하여 필요에 따라 장면의 내용을로드 한 다음 현재 내용을 새 내용으로 채우거나 새로운 내용으로 채우십시오. –

답변

0

실제로 달성하고자하는 것을 말하지 않고 시도한 일부 코드의 증상을 치료 해줄 것을 요청하는 것과 같은 질문을하는 것은별로 도움이되지 않습니다. 사용자가 특정 버튼을 클릭 할 때 새로운 콘텐츠를 표시하려는 의도가있는 경우 무대를 닫는 것이 좋습니다. 소프트웨어는 일반적으로 그렇게하지 않습니다. 대신 현재 스테이지의 새 장면 (스크린이 아님)을 만들고 설정하거나 현재 장면의 루트 노드를 교환하십시오.

+0

질문을하고 답변 해 주셔서 감사합니다. 나는 다음 번에 질문하는 나의 방식을 향상시킬 것이라고 생각한다. =^_^= – YuLiu