複数の同様のボタン/パネルを作成する適切な方法

私は以下のコードを実行しようとしましたが、最後の GridLayout (Intelligence stat)にのみ(マイナス/プラスボタン)が表示されます。

JButton plusButton = new JButton("+");
JButton minusButton = new JButton("-");

statStrengthGridPanel = new JPanel(new GridLayout(1,3));
statStrengthGridPanel.add(minusButton);
statStrengthGridPanel.add(new JLabel("10"));
statStrengthGridPanel.add(plusButton);

statConstitutionGridPanel = new JPanel(new GridLayout(1,3));
statConstitutionGridPanel.add(minusButton);
statConstitutionGridPanel.add(new JLabel("10"));
statConstitutionGridPanel.add(plusButton);

statDexterityGridPanel = new JPanel(new GridLayout(1,3));
statDexterityGridPanel.add(minusButton);
statDexterityGridPanel.add(new JLabel("10"));
statDexterityGridPanel.add(plusButton);

statIntelligenceGridPanel = new JPanel(new GridLayout(1,3));
statIntelligenceGridPanel.add(minusButton);
statIntelligenceGridPanel.add(new JLabel("10"));
statIntelligenceGridPanel.add(plusButton);

私はPanel名(複数のものを持っている)のように何かできることは知っていますが、最初はパネルに対してそれをしたくありません。私はベストプラクティスを使用しようとしており、自分のコードを繰り返してはいけません。助言がありますか??

目標は、ポイントを割り当てるために、4つの統計情報を持つことです(スライダに対して決定した)。最終的に私は彼らに上限と下限を持たせ、 "未使用"のラベルを減らし、そのすべての良いものを減らすでしょうが、私は繰り返しはしたくありません。

0
私はスピナーを使用することを決めました
追加された 著者 KisnardOnline,
スピナーの使用方法も参照してください。
追加された 著者 trashgod,
カスタム統計パネルまたはグリッドパネルコンポーネントを作成することを考えましたか? JPanel を拡張して、ボタンやラベルを作成時に追加する GridPanel クラスを作成することもできます。
追加された 著者 Nate W.,

1 答え

なぜそれが動作しない理由は、別のグリッドパネルに同じボタンを追加することです。私はあなたがそれらを見たいすべての場所のために新しいものを作成する必要があると思います。 のようなものを試す

statStrengthGridPanel = new JPanel(new GridLayout(1,3));
statStrengthGridPanel.add(new JButton("-"));
statStrengthGridPanel.add(new JLabel("10"));
statStrengthGridPanel.add(new JButton("+"));
1
追加された
ええ、私はそれをやりたいとは思わなかった。なぜなら、ボタンの量を4倍にしてしまうからだ。ただ、あまりにも多くのものを作るという恐怖を乗り越える必要がある。私はオブジェクト指向を覚えていなければなりません:)ありがとう!
追加された 著者 KisnardOnline,