Java 穆塞利斯腾纳和穆塞利克
我只是在胡闹MouseListener,想在点击Java 穆塞利斯腾纳和穆塞利克,java,swing,jbutton,mouselistener,Java,Swing,Jbutton,Mouselistener,我只是在胡闹MouseListener,想在点击buttP时在我的面板上添加一个新的JButton;但是,当我按buttP时,它不会刷新面板。 我尝试了重新绘制的方法,但不起作用。有人知道我如何刷新面板,使新的JButton自动显示吗 public class Panel extends JPanel{ private JButton buttP; public Panel(){ buttP = new JButton("TEST"); buttP.addMouseListen
buttP
时在我的面板上添加一个新的JButton;但是,当我按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
}
}
}
非常感谢尝试使用invalidate()
或revalidate()
顺便说一句,不要使用MouseListener
(@mKorbel+1)而是使用ActionListener
。- 我认为增加这个数字的想法是错误的
- 必须补充一点
invalidate()
,肯定对AWT
,Swing
,直到Java1.4,请参阅我答案中链接的代码示例。。。