坦克大战01
作者:互联网
java绘图坐标体系
简单介绍
坐标的原点位于左上角,用像素作为单位,横向为x轴,垂直方向为y轴
像素
像素是一个密度单位
eg:显示器的分辨率是800*600,则表示计算机屏幕共有480000个像素
快速入门
public class DrawCircle extends JFrame{
//定义一个面板
private MyPanel mp=null;
public static void main(String[] args) {
new DrawCircle();
}
public DrawCircle(){//构造器
//初始化面板
mp=new MyPanel();
//把面板放入到窗口
this.add(mp);
//设置窗口的大小
this.setSize(400,300);
//当点击窗口的小x,程序就完全退出
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);//可以显示
}
}
//1.先定义一个面板MyPanel(),继承JPanel类
class MyPanel extends JPanel{
//说明
//1.Mypanel对象就是一个画板
//2.Graphics g把g理解成一个画笔
//3.Graphics提供了很多绘图的方法
//Graphics g
@Override
public void paint(Graphics g) {
super.paint(g);//调用父类的方法初始化
//画出一个圆
System.out.println("被调用了~");
g.drawOval(100,100,100,100);
}
}
API文档如下:
运行展示:
绘图原理
-
Component类提供了两个和绘图 相关最重要的方法
- paint(Graphics g)绘制组件的外观
- repaint()刷新组件的外观
-
当组件第一次在屏幕显示的时候,程序会自动的调用paint()方法来绘制组件
-
以下情况paint()会被调用
- 窗口最小化 再最大化
- 窗口的大小发生变化
- repain方法被调用
java绘图技术
Graphics类
-
画直线 drawLine(int x1,int y1,int x2,int y2)
-
画矩形边框 drawRect(int x,int y,int width,int height)
-
画椭圆边框 drawOval(int x,int y,int width,int height)
-
填充矩形 fillRect(int x,int y,int width,int height)
-
填充椭圆 fillOval(int x,int y,int width,int height)
-
画图片 drawImage(Image img,int x,int y,..)
-
遇到了问题,无法成功调用图片
-
已解决,应该把图片粘贴到out目录下的文件名中
-
-
-
画字符串 drawString(String str,int x,int y)
-
设置画笔的字体 setFont(Font font)
-
设置画笔的颜色 setColor(Color c)
标签:01,int,大战,paint,调用,绘图,Graphics,坦克,public 来源: https://www.cnblogs.com/wdzx/p/16031230.html