Java Swing关于界面刷新的问题!!

就是在我点击按钮的时候,JPanel中的内容不需要自己拖拉界面,而是随按钮的不同马上变化!

这个,你把jpanel对象声明为成全局变量,在主窗体里面去创建,然后通过按钮来改变jpanel对象即可:具体的代码我就不写了,给点关键的给你,仅作参考!
我没有编译环境,单词有可能有些错,能表达意思就好,
代码如下:

class Demo extend Jframe{
private Jpanel panel=null;//这个是你要更改的面板
private Jbutton btnA=null;
private Jbutton btnB=null;

public Demo()
{
this.setSize(800,600)

panel=new Jpane();
panel.setSize(100,100);

btnA=new Jbutton("宽度加300")
btnA.addActionListener(new actionListener(){
实现接口方法,在实现方法中填入panel.setSize(400,100);
})

btnB=new Jbutton("高度加300")
btnB.addActionListener(new actionListener(){
实现接口方法,在实现方法中填入panel.setSize(100,400);
})
this.add(panel);
this.add(btnA);
this.add(btnB);

}

main(String[] args){
new Demo();

}

}
当程序运行的时候,你分别点击按钮你就可以随时改变panel中的类容了,包括在panel中控件,文本等!!,其他的什么布局,坐标什么的,楼主应该很熟悉的,我只给个例子!!我就不啰嗦了!
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-10
简单的很。可以用按钮监听事件然后重绘界面就行了。比如:
JPanel jp=(JPanel)this.getContentPane();
JButton jb=new JButton();
public TFrame()
{
//构造方法里的把组件添加进去
jp.addActionListener(new ActionListener()
{
//更新内容
// jp.removeAll();//如果内容需要实时更新,可以remove,来释放资源。但是前提是,组件都是在构造方法里实例化的,然后可以remove后在添加内容进去。用remove时不需要用repaint();
jp.repaint();//这样重绘界面,界面就更新了。
});
}本回答被提问者和网友采纳
第2个回答  2012-12-23
多少个按钮对应多少个JPanel、但先隐藏---只显示当前的,点哪个按钮对应的JPanel显示
相似回答