我有一个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面板的布局是一个网格布局设置,允许多行和两列。
答案 0 :(得分:4)
在mR.revalidate()
repaint();
答案 1 :(得分:0)
有关动态添加组件到容器的示例代码,请参阅my answer on a previous SO question