提问:如何消除在JPanel上绘制线条出现的闪动? imgv=createImage(x,y);gv=imgv.getGraphics();gv.drawline()用这种方法--创建双缓冲。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import java.awt.*;public class DoubleBufferPanel extends Panel{ Image offscreen; public void invalidate(){ super.invalidate(); offscreen=null; } punlic void update(Graphics g){ paint (g); } public void paint (Graphics g){ if(offscreen==null){ offsrceen=createImage(getSize().width, getSize().height); } Graphics og=offscreen.getGraphics(); og.setClip(0,0,getSize().width,getSize().height); super.paint(og); g.drawImage(offscreen,0,0,null); og.dispose(); }} 谢谢两位,给分,但效果没有变,拖动的时候还闪:(在mouseDragged方法里应该怎样刷新线条?直接drawline两次还是repaint?? 你可以创建一个新的线程,重写run的方法,将repaint()的方法加到其中去。试试,我们游戏都这样实现。 JTable cell编辑颜色、文本 给解释一下这个正则表达式。 Java未来将何去何从?大家进来讨论一下。 如何用最快最有效的方法解决这个问题 关于mysql和jdbc的弱弱的问题 关于车辆监控定位的问题 combobox清除item后不能显示?? 工作中的朋友请回答~ 大家帮忙看看这个程序.改不出来哪错啊 一个新手问题 关于位操作的 寻求java中的字符处理代码 请问两个JAVA问题,一个很浅、一个可能很深
public class DoubleBufferPanel extends Panel{
Image offscreen;
public void invalidate(){
super.invalidate();
offscreen=null;
}
punlic void update(Graphics g){
paint (g);
} public void paint (Graphics g){
if(offscreen==null){
offsrceen=createImage(getSize().width,
getSize().height);
}
Graphics og=offscreen.getGraphics();
og.setClip(0,0,getSize().width,getSize().height);
super.paint(og);
g.drawImage(offscreen,0,0,null);
og.dispose();
}
}
在mouseDragged方法里应该怎样刷新线条?直接drawline两次还是repaint??
试试,我们游戏都这样实现。