我是用JAVA去写了一个图形界面,并且需要把数据库中的数据以表格的形式显示在Jpanel容器上。
当我成功把一张表弄出来后,再点击按钮,想查看另外一张表。
但是,我点击按钮,读取另一张表的时候,Jpanel上没有变化,表的内容没变,但是当我把程序最小化再弹出来后,表就替换显示成功了。
我的写法是执行sql语句,把表格放在Jpanel上显示,当我需要替换另一张表格的时候,就把当前的图表给remove掉,再重新执行sql语句。按道理,它会直接显示出来,但是它却需要最小化后才能显示。我没写paint画图,应该没和双缓冲有关系把?请问,这是什么问题造成的呢?我要怎样写才能使这个这些图表能瞬间完成互换显示。
求懂得朋友们指导
当我成功把一张表弄出来后,再点击按钮,想查看另外一张表。
但是,我点击按钮,读取另一张表的时候,Jpanel上没有变化,表的内容没变,但是当我把程序最小化再弹出来后,表就替换显示成功了。
我的写法是执行sql语句,把表格放在Jpanel上显示,当我需要替换另一张表格的时候,就把当前的图表给remove掉,再重新执行sql语句。按道理,它会直接显示出来,但是它却需要最小化后才能显示。我没写paint画图,应该没和双缓冲有关系把?请问,这是什么问题造成的呢?我要怎样写才能使这个这些图表能瞬间完成互换显示。
求懂得朋友们指导
or
panel.updateUI();panel 就是你显示图表的JPanel。你没有override paintComponent方法的话,怎么使用JPanel显示的图表
jpanel.add(jtable, BorderLayout.CENTER);->jpanel.add(new JScrollPane(jtable), BorderLayout.CENTER);重绘的问题,不知道你是怎么换的表格,试试 panel.invalidate();