を含んでいない私はshow()
を呼び出した後、start()
方法でminWidth
とシーンのminHeight
を設定しようとしてきたが、それがすることになっているようgetHeight()
呼び出しは装飾が含まれていないようです。ステージの高さはルートシーンと同じです。ステージのgetHeightが装飾
この文書では、そうではないと示唆しています。私が間違っていることは何か考えていますか?
OS:Ubuntuの16.04
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
Parent r = FXMLLoader.load(getClass().getResource("things.fxml"));
Scene root = new Scene(r);
primaryStage.setTitle("foo");
primaryStage.setScene(root);
primaryStage.sizeToScene();
primaryStage.centerOnScreen();
primaryStage.show();
// primaryStage.getHeight() and root.getHeight() are the same here!
// doc suggests that they are supposed to be different
primaryStage.setMinWidth(primaryStage.getWidth());
primaryStage.setMinHeight(primaryStage.getHeight());
}
public static void main(String[] args) {
launch(args);
}
}
問題は、あなたが装飾から得ようとしている+16の幅と+38の高さを得ていないようです。 OSのことかもしれません。 – imbuedHope
私はUbuntuを使ったことがありません。あるいは、少なくともプログラムされているので、これが原因であるとは確信できません! –
おそらく、特定の幅と高さのルートをロードして寸法をチェックしたところ、仕様が動作していないshowを呼び出すと装飾は含まれませんでした。悪質なJDKのインストールでもあります。しかたがない。 – imbuedHope