私は JButtons を作成し、それらを垂直に配置するように設定された BoxLayout を使用して JPanel に追加するプログラムを持っています。最初のボタンが JPanel から意図的に削除されることがあります。最初、ボタンは正しく中央に配置され、ボタンも正常に削除されています。問題は、残りのボタンが離れてスペースを埋めることです。これは私が望んでいることではありません。代わりに、離れずにy軸に沿って中心を合わせ直してもらいたいのです。
JPanel を拡張するクラスがあります。コンストラクターで BoxLayout が作成されます。
setPreferredSize(new Dimension(150, 500));
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
setAlignmentY(CENTER_ALIGNMENT);
ボタンの作成は現在、このクラスのメソッドです。
createButtons(int numButtons){
for (int i=0;i<numButtons;i++) {
add(new JButton());
}
削除は別の方法です。
removeButton(){
if(getComponentCount()>1){
remove(0);
validate();
repaint();
}
}
含まれているパネルを埋めるためにバラバラに広がることなく、ボタンをy軸に沿って中央に配置する方法を知っている人はいますか?