重绘

一只红烧虾 2020-05-24 05:19:58
java 当中repaint这个方法是调用的paintcomponent这个方法?这个paintcomponent方法是只要程序运行就一直被调用吗?如果是,那为什么没有写repaint的时候就不会再重新绘制呢?
...全文
63 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qybao 2020-05-24
  • 打赏
  • 举报
回复
paintcomponent不是一直被调用的,是组件需要被重绘时才被调用,比如组件被初次显示到屏幕,或者窗口最大,最小化恢复的时候等等,组件再次被显示的时候就会自动调用重绘(一般也是通过repaint方法来完成重绘的,所以想知道什么时候重绘可以查看源码,看看什么方法调用了repaint方法,如setvisible会调用show方法,show方法就有调用repaint,所以只要调用setvisible的时机都会发生重绘) 否则在不会自动调用repaint方法的任何时机都不会发生重绘,这种时候就要自己repaint了,比如在panel上画了东西想显示的时候,或者改变了背景图像想刷新背景的时候,等等,这些时候窗体本身没有被系统重绘,所以窗体上的变化是看不到的,所以这时候就需要自己重绘了。

62,612

社区成员

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

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