当前位置:编程学习 > JAVA >>

Frame显示图片问题额

package exclusive;
 import java.awt.event.*;
 import java.awt.*;
 
 public class Calculator{
  public static void main(String[] args)throws Exception {
  Frame f = new Frame("专用计算器");
  MediaTracker track = new MediaTracker(f);
  Toolkit tool = f.getToolkit();
  Image image = tool.getImage("1.png");
  track.addImage(image, 1);
  f.setLocation(500, 150);
  f.setSize(380, 500);
  f.addWindowListener(new WindowAdapter(){
  public void windowClosing(WindowEvent e){
  System.exit(0);
  }
  });
  f.setVisible(true);
  track.waitForAll();
  Graphics g = f.getGraphics();
  f.setIconImage(image);
  g.drawImage(image, 0, 0, f.getWidth(),f.getHeight(),f);
  }
 }
 这段代码  创建一个窗口 然后显示一张图片在窗口
 问题就是 窗口 被其他窗口 遮住后 图片就会消失
 或者最小化  然后 最大化 图片就会消失 --------------------编程问答-------------------- 对相应的时间编写方法在线、方法里面写repaint方法 --------------------编程问答-------------------- 因为画图片这个只是一次性有效的。

所以一般来说你需要重写 Frame 的 paint(Graphics g) 函数,负责图片被遮挡后的重绘。

或者不要直接把图片画上去,而是用Label控件来负责显示该图片,那么控件会自动完成重绘。 --------------------编程问答-------------------- 放Label里面
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,