java绘图技术,演示绘制不同的图形。
做一个笔记,方便日后查找。
import javax.swing.*;
import java.awt.*;
public class DrawCircle extends JFrame{//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,退出程序,释放JFrame
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//可以显示
this.setVisible(true);
}
}
//1、先定义一个MyPanel() 面板
class MyPanel extends JPanel{
//MyPanel 对象就是一个画板
//Graphics g 把g理解成一支画笔
//Graphics 提供了很多绘图的方法
@Override
public void paint(Graphics g) {//绘图方法
super.paint(g);//调用父类的方法完成初始化
//演示绘制不同的图形
// 画直线 drawLine(int x1,int y1,int x2,int y2)
//g.drawLine(10, 10, 100, 100);
//g.drawLine(20, 20, 200, 200);
//画矩形边框 drawRect(int x, int y, int width, int height)
//g.drawRect(10, 10, 100, 100);
//g.drawRect(20, 20, 100, 100);
//画椭圆、园边框 drawOval(int x, int y, int width, int height)
//g.drawOval(10,10,100,100);
//填充矩形 fillRect(int x, int y, int width, int height)
//设置画笔的颜色
//g.setColor(Color.blue);
//g.fillRect(10, 10, 100, 100);
//g.setColor(Color.green);
//g.fillRect(20,20,100,100);
//填充椭圆 fillOval(int x, int y, int width, int height)
// g.setColor(Color.red);
// g.fillOval(10, 10, 100, 100);
//画图片 drawImage(Image img, int x, int y, ..)
//1. 获取图片资源, /bg.png 表示在该项目的根目录去获取 bg.png 图片放在out\production\test(项目名) 文件夹下
//Image image = Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/bg.jpg"));
//g.drawImage(image,10,10,240,240,this);
//画字符串 drawString(String str, int x, int y)//写字
//设置画笔的字体 setFont(Font font)
//设置画笔的颜色 setColor(Color c)
//给画笔设置颜色和字体
g.setColor(Color.green);
g.setFont(new Font("楷书",Font.BOLD,50));
//这里设置的 100, 100, 是 "世界你好"左下角
g.drawString("世界你好",100,100);
}
}