0 0

swing组件重绘背景问题5

下面的方法是继承JPANEL的自定义类中的方法,是可以实现组件第一次预览时出现背景图片。
//重写父类继承来的方法paintComponent
public void paintComponent(Graphics g){
    super.paintComponent(g);
    if(null!=bground){
       paintBackGroundIcon(g);
    }
}
//画背景的方法
public void paintBackGroundIcon(Graphics g){
    g.setColor(Color.BLACK);
    g.fillRect(0,0,getWidth(),getHeight());
    ImageIcon icon=(ImageIcon)bground;
    Image image=icon.getImage();
    int pw=this.getWidth();
    int ph=this.getHeight();
    int iw=image.getWidth(this);
    int ih=image.getHeight(this);
    int x=0,y=0;
    while(y<ph){
        g.drawImage(image,x,y,this);
        x+=iw;
        if(x>pw){
	    x=0;
	    y+=ih;
	 }
     }
}

问题是,当我希望在窗体运行的时候,可以选择更换背景图片,再调用该jpanel对象的repaint()重绘方法时窗体会卡住,
不能重新绘制新的图片背景,问题是出现在哪里?请大牛们指点,谢谢!
2011年12月24日 12:04
目前还没有答案

相关推荐

    java_MainFrame.pdf

    Java Swing GUI 编程基础知识 Java 中的 GUI 编程是使用 Java Foundation Classes(JFC)来实现的...本例中涉及到了 Java GUI 编程的多个方面,包括事件处理、图形组件的布局和排版、图形绘制、菜单和菜单项、重绘等。

    JAVA上百实例源码以及开源项目

     Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...

    JAVA上百实例源码以及开源项目源代码

     Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...

    java源码包---java 源码 大量 实例

     Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...

    java源码包2

     Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...

    java源码包3

     Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...

    java源码包4

     Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰效果 Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰效果 Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、...

Global site tag (gtag.js) - Google Analytics