Swing图片绘制闪烁

本文描述了一个GUI应用程序中遇到的问题:当开关和灯泡的状态发生改变时出现闪烁现象。该问题只发生在图片状态改变的情况下,而使用Graphics类绘制的图形则没有此现象。文章探讨了可能的原因,并提供了一种解决方案——通过增加额外的repaint调用来消除闪烁。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

天行健 君子以自强不息 
地势坤 君子以厚德载物

 

实验室一个项目中的一个场景:一个开关和一个灯泡,分别对应两种状态即:亮和灭、开和关。这四种不同状态都是用一副图片来表示的。开关最初是关闭的,用鼠标双击后打开(绘制打开状态的图片),灯泡状态发生变化同样是用另一个状态的图片绘制。问题是:开关和灯泡在第一次发生状态转换的时候,会出现闪烁的情形,只有图片的四个角绘制出来,应该是由于第一次要从硬盘中加载图像文件的原因。其他用Graphics类绘制的图形不会出现此种现象。

 

解决办法:在状态发生变化会将整个面板repaint,因此只要多repaint一次就可以消除这种现象。

 

今天试了一下又不行了 上面的办法还是有问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值