Java - 如何在按下按钮时将新的JLabel和JTextPane添加到JPanel

时间:2012-04-03 13:44:21

标签: java swing jpanel actionlistener

我有一个JPanel,当按下按钮时我想添加一个新的JLabel和JTextField。但是,我似乎无法让它发挥作用。

我的ActionListener是否存在问题,如果没有问题,如何实现?

JPanel south = new JPanel();
JButton add = new JButton("Add");
ActionListener addListener = new ActionListener() {

     @Override
     public void actionPerformed(ActionEvent e) {
           JLabel mL = new JLabel("MOD: ");
           mR.add(mL);
           JTextField mM = new JTextField(10);
           mR.add(mM);
           mR.repaint();

     }

};
add.addActionListener(addListener);
south.add(add);
add(south, BorderLayout.NORTH);

mR面板的布局是一个网格布局设置,允许多行和两列。

2 个答案:

答案 0 :(得分:4)

mR.revalidate()

之前致电repaint();

答案 1 :(得分:0)

有关动态添加组件到容器的示例代码,请参阅my answer on a previous SO question