1

だから私は私のスイングGUIに(サブ)レースオプションを追加してハイブリッドキャラクターを作成することを想定しているボタンを持っています実際にクラスを更新するコードと統計値はコンソールで機能しますが、GUIの側面は現在私のコードが動的に行うのが難しいことを証明しています新しいコードを作成しますが、追加ボタンの内側に階層化して、それ自体ではなく親パネルを変更する必要があります。アイデア?

if (e.getActionCommand().equals("AddRaceBox")){
        JButton cb = (JButton)e.getSource();
        String[] cRace = new String[75];
        JComboBox[] raceBox = new JComboBox[2];
        raceBox[1] = new JComboBox();
        for (int i=0; i<75; i++){
            cRace[i] = nala.getRaceName(i);
            raceBox[1].addItem(cRace[i]);
            }
        cb.add(raceBox[1]);

        ImageIcon deleteRaceIcon = createImageIcon("1359702329_delete_user.png", "add race icon");
        JButton addRaceButton1 = new JButton(deleteRaceIcon);
        addRaceButton1.addActionListener(this);
        addRaceButton1.setActionCommand("AddRaceBox");
        addRaceButton1.setSize(new Dimension(32, 32));          
        cb.add(addRaceButton1);
        cb.revalidate();
        cb.repaint();
        System.out.println("Add Race Clicked");
    }
4

1 に答える 1

2

1)から派生した新しいものJButtonと別のものを追加した理由JComboBoxJButtonActionListener

JButton cb = (JButton)e.getSource();

.
.

cb.add(raceBox[1]);

.

cb.add(addRaceButton1);
cb.revalidate();
cb.repaint();

2)JButtonいずれかを見逃した場合LayoutManager、新しいJButtonおよびJComboBox(派生に追加JButton)がDimmension[0, 0]

3)SSCCEをより早く投稿するためのより良いヘルプのために、短く、実行可能で、コンパイル可能

于 2013-02-01T19:43:34.810 に答える