Java GUIアプリケーションを作成するために、Eclipseとwindowsbuilderを使用しています。スイング パネルのコンポーネントのパディングを維持するのに問題があります。コンポーネントを配置するために、windowbuilder デザイナーでグループ レイアウトを使用しています。しかし、残念ながら、ウィンドウのサイズが変更されたときにパディングを維持することはできません。
通常のウィンドウ
サイズ変更または最大化時のウィンドウ
ウィンドウのサイズが変更されると、コンポーネントのパディングが正しく維持されるように、3 番目の画像のように、アプリで水平方向と垂直方向のギャップのサイズを自動的に変更したいと考えています。
コード:
public myframe() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
JPanel panel = new JPanel();
contentPane.add(panel, BorderLayout.CENTER);
JButton btnNewButton = new JButton("New button");
GroupLayout gl_panel = new GroupLayout(panel);
gl_panel.setHorizontalGroup(
gl_panel.createParallelGroup(Alignment.TRAILING)
.addGroup(Alignment.LEADING, gl_panel.createSequentialGroup()
.addGap(166)
.addComponent(btnNewButton)
.addContainerGap(169, Short.MAX_VALUE))
);
gl_panel.setVerticalGroup(
gl_panel.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panel.createSequentialGroup()
.addGap(37)
.addComponent(btnNewButton)
.addContainerGap(192, Short.MAX_VALUE))
);
panel.setLayout(gl_panel);
}