2

GridBagLayout を使用して、ゲームのメニューを jframe の中央に配置します。画面解像度が 1920x1080 の固定コンピューターでは問題なく動作しますが、まったく同じコードを使用しても、ラップトップではメニューが表示されません。

jframe にメニューを追加するコードは次のとおりです。

        frame.setLayout(new GridBagLayout());
        if(menu.checkGame() == false){
            menu.setLayout(null);
            menu.setBackground(new Color(0, 0, 0, 0));
            menu.setPreferredSize(new Dimension(1400, 1080));
            load.setBackground(true);
            frame.add(menu, new GridBagConstraints());
        }

低解像度で動作しないのはなぜですか? また、この問題を解決するにはどうすればよいですか?

4

1 に答える 1

1

GridBagLayout に、すべての子コンポーネントの適切なサイズに十分なスペースがない場合は常に、各コンポーネントが最小サイズに設定されます。を追加してみてくださいmenu.setMinimumSize(menu.getPreferredSize())

于 2013-06-06T16:57:49.560 に答える