第三周 day06

第七章  图形用户界面

7.1绘图

1.坐标:

(1)GUI(图形用户界面)组件的左上角坐标默认为(0,0)

(2)从左上角到右下角,水平坐标x和垂直坐标y增加

(3)坐标的单位是像素

2.Graphics对象:

(1)专门管理图形环境。Graphics类是一个抽象类

(2)抽象类Graphics提供了一个与平台无关的绘图接口

(3)各平台上实现的Java系统将创建Graphics类的一个子类,来实现绘图功能,但这个子类对程序员是透明的

(4)在执行paint方法时,系统会传递一个指向特定平台的Graphics子类的图形对象g

3.颜色

 4.字体

5.Graphics类

Graphics类常用方法:

 

eg:

import javax.swing.*;
import java.awt.*;

public class GraphicsTester extends JFrame {
    public GraphicsTester(){
        super("绘图学习");
        setVisible(true);//显示窗口
        setSize(480,250);//设置窗口大小
    }
    public void paint(Graphics g){
        super.paint(g);
        g.setFont(new Font("SansSerif",Font.BOLD,12));
        g.setColor(Color.blue);
        g.drawString("这是我绘制的字符串",20,50);

        g.setFont(new Font("Serif",Font.ITALIC,14));
        g.setColor(new Color(255,0,0));
        g.drawString("这是我绘制的另一个字符串",250,50);

        g.drawLine(20,60,460,60);

        g.setColor(Color.GREEN);
        g.drawRect(20,70,100,50);//绘制空心矩形
        g.fillRect(130,70,100,50);//绘制实心矩形

        g.setColor(Color.YELLOW);
        g.drawRoundRect(240,70,100,50,50,50);//绘制空心圆角矩形
        g.fillRoundRect(350,70,100,50,50,50);//绘制实心圆角矩形

        g.setColor(Color.cyan);
        g.draw3DRect(20,130,100,50,true);//绘制凸起效果空心矩形
        g.fill3DRect(130,130,100,50,false);//绘制凹陷效果实心矩形

        g.setColor(Color.PINK);
        g.drawOval(240,130,100,50);//绘制空心椭圆
        g.drawOval(350,130,100,50);//绘制实心椭圆

        g.setColor(new Color(0,120,20));
        g.drawArc(20,190,100,50,0,90);//绘制一段圆弧
        g.fillArc(130,190,100,50,0,90);//绘制扇形

        g.setColor(Color.BLACK);
        int xValue[] ={250,280,290,300,330,310,320,290,260,270};
        int yValue[] ={210,210,190,210,210,220,230,220,230,220};
        g.drawPolygon(xValue,yValue,10);//绘制空心多边形

        int xValue2[] ={360,390,400,410,440,420,430,400,370,380};
        g.fillPolygon(xValue2,yValue,10);//绘制实心多边形
    }

    public static void main(String[] args) {
        GraphicsTester application = new GraphicsTester();
        application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

 

6.Graphics2D类

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值