利用Swing在窗体上绘制线条与文字(一)——简单的入门讲解

效果:

在这里插入图片描述

代码:

package Test;


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

public class TestFrame extends JFrame {
    public TestFrame(){
        add(new NewPanel());
    }

    public static void main(String[] args) {
        TestFrame frame=new TestFrame();
        frame.setTitle("TestPaintComponent");
        frame.setSize(200,100);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    }
}

class NewPanel extends JPanel{
    protected void paintComponent(Graphics g){
        super.paintComponent(g);
        g.drawLine(0,0,50,50);
        g.drawString("Banner",0,40);
    }
}

讲解

第一次生成或者重新生成窗体的时候,会自动调用paintComponent方法重新绘制图像, super.paintComponent(g);是为了确保清空之前画图的区域。

    g.drawLine(0,0,50,50);

画一条从(0,0)到(50,50)的直线

    g.drawString("Banner",0,40);

在(40,0)的地方绘制字符串“Banner”

protected void paintComponent(Graphics g)

为什么把paintComponent设置为protected,因为JVM会调用paintComponent在组件上画画,用户用不着调用这个方法,所以设置为protected就够了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值