窗体2

package cn.sxt.game2;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JFrame;

import javax.swing.JFrame;

/**
 * 飞机游戏的主窗口
 * @author Vitol
 *
 */
public class MyGameFrame extends JFrame {
    
    Image ball = GameUtil.getImage("images/ball.png");
    
    /**
     * 绘画工具
     * 自动被调用,g相当一个画笔
     * 
     */
    @Override
    public void paint(Graphics g) {
        
        Color c = g.getColor();
        g.setColor(Color.BLUE);//给他点颜色
        
        g.drawLine(100, 100, 300, 300);    //线(x1, y1, x2, y2)
        g.drawRect(100, 100, 300, 300);    //矩形(x, y, width, height)
        g.drawOval(100, 100, 300, 300);    //椭圆(x, y, width, height)
        g.fillRect(100, 100, 300, 300);    //实心矩形(x, y, width, height)
        g.drawString("我是谁", 200, 200); //画字符串
        g.drawImage(ball, 250, 250, null);//(img, x, y, observer)
        g.setColor(c);//把给他的颜色清除
    }
    
    /**
     * 初始化窗口
     */
    public void launchFrame() {
        
        this.setTitle("尚学堂学员_Vitol作品");    //标题    
        this.setVisible(true);    //设置窗口是否可见
        this.setSize(500,500);    //设置窗口大小
        this.setLocation(300,300);    //设置窗口位置
        
        //点差结束程序
        this.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });
        
    }
    
    public static void main(String[] args) {
        //实例化对象
        MyGameFrame  f = new MyGameFrame();
        f.launchFrame();
    }
    
}

 

 1 package cn.sxt.game2;
 2  
 3 import java.awt.Image;
 4 import java.awt.image.BufferedImage;
 5 import java.io.IOException;
 6 import java.net.URL;
 7 import javax.imageio.ImageIO;
 8  
 9 public class GameUtil {
10     // 工具类最好将构造器私有化。
11     private GameUtil() {
12     } 
13  
14     
15     /**
16      * 返回指定路径文件的图片对象
17      * @param path
18      * @return
19      */
20     public static Image getImage(String path) {
21         BufferedImage bi = null;
22         try {
23             URL u = GameUtil.class.getClassLoader().getResource(path);
24             bi = ImageIO.read(u);
25         } catch (IOException e) {
26             e.printStackTrace();
27         }
28         return bi;
29     }
30 }

 

你可能感兴趣的:(窗体2)