请问repaint命令为什么不执行?急!

postgraduatetw 2011-01-16 08:11:04
我的程序是在点击按钮后根据输入参数更新绘图,通过actionPerformed中调用repaint实现,现在点击按钮没有反应,绘图只能在窗口从最小化到最大化后更新,在paint方法中第一句加了super.paint(g)命令还是不行。点击按钮后为什么repaint不执行?我是菜鸟,请各位高手多指教,多谢了!
另外,我想禁止窗口在从最小化到最小化后更新绘图,初步想法是加入窗口监听器并在windowActivated方法中设置状态变量,在paint方法中首先判断状态变量,如果是激活窗口则不进行重绘,不知道是不是可行?各位有什么好方法?
程序代码比较多,如果需要可以发给您。
...全文
125 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
postgraduatetw 2011-02-04
  • 打赏
  • 举报
回复
问题已经解决了。不好意思,是我搞错了,repaint方法没有问题,是我把按钮的监听器设置成了一个没有在窗口显示出来的绘图面板的实例,自然按钮不起作用了。谢谢两位的回答,见笑了。
postgraduatetw 2011-01-17
  • 打赏
  • 举报
回复
试过paintComponent了,也不行。
三楼是说的是在run方法里调用getGraphics获得Graphics对象画图吗(听说此种方式绘图结果不会长久保留)?还是在run方法里调用repaint?能具体讲讲吗?我没什么经验,请各位多指导,谢谢!
lantian_0802 2011-01-17
  • 打赏
  • 举报
回复
设置一个独立的线程进行重画!
gongfuliang 2011-01-17
  • 打赏
  • 举报
回复
paintComponent
postgraduatetw 2011-01-16
  • 打赏
  • 举报
回复
补充一句,Paint方法是在JPanel子类中重写的。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧