第一次调用JavaFx Stage::setY在Linux上不一致-解决方法?

第一次调用JavaFx Stage::setY在Linux上不一致-解决方法?,java,linux,javafx-8,Java,Linux,Javafx 8,当我运行下面的程序时,有50%的几率第一次点击按钮会导致窗口移动到10像素以下(使用Ubuntu linux、Oracle JDK 1.8、JavaFx 8.0.102-b14)。之后,每次单击都会正确地产生一个小的向上移动 import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.layout.StackPan

当我运行下面的程序时,有50%的几率第一次点击按钮会导致窗口移动到10像素以下(使用Ubuntu linux、Oracle JDK 1.8、JavaFx 8.0.102-b14)。之后,每次单击都会正确地产生一个小的向上移动

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class JavaFxTest extends Application {
  @Override
  public void start(Stage myStage) {
    myStage.setTitle("Hello World!");
    Button myButton = new Button();
    myButton.setText("Click!");
    myButton.setOnAction(event -> myStage.setY(myStage.getY() - 1));
    StackPane myStackPane = new StackPane();
    myStackPane.getChildren().add(myButton);
    myStage.setScene(new Scene(myStackPane, 300, 250));
    myStage.show();
  }

  public static void main(String[] args) {
    launch(args);
  }
}
以下视频演示了该错误:

使用awt和swing时,我遇到了类似的问题,并在此处发布了问题:

是否有人有解决方法来实现正确的窗口位置