0

私はちょうど MouseListener をいじっていて、buttPクリックされるたびに新しい JButton を Panel に追加したかったのです。ただし、 を押してもパネルが更新されませんbuttP。再描画方法を試しましたが、うまくいきません。新しいものJButtonが自動的に表示されるようにパネルを更新する方法を知っている人はいますか?

public class Panel extends JPanel{

private JButton buttP;
public Panel(){
    buttP = new JButton("TEST");
    buttP.addMouseListener(new addNewButtMouseListener());
    add(buttP);
}

private class addNewButtMouseListener implements MouseListener{

    @Override
    public void mouseClicked(MouseEvent e) {
        JButton b = new JButton("HA");
        add(b);
    }

    @Override
    public void mousePressed(MouseEvent e) {
        // TODO Auto-generated method stub

    }

    @Override
    public void mouseReleased(MouseEvent e) {
        // TODO Auto-generated method stub

    }

    @Override
    public void mouseEntered(MouseEvent e) {
        // TODO Auto-generated method stub

    }

    @Override
    public void mouseExited(MouseEvent e) {
        // TODO Auto-generated method stub

    }

}

}

どうもありがとう

4

2 に答える 2

1

invalidate()、またはを使用してみてくださいrevalidate()

ところで、代わりにMouseListener(@mKorbelの+1)を使用しないActionListenerでください。

于 2012-11-23T06:24:02.980 に答える
1
于 2012-11-23T06:33:38.857 に答える