Java绘机制和绘图演示

java绘图与事件响应机制-基础 坐标体系-介绍 java坐标体系,坐标原点在左上角,以像素为单位,在java体系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标远点y个向上。 像素 绘图必须搞清楚一个重要概念,像素。 计算机在屏幕上显示的内容都是由屏幕上的每一个像素组成的。例如,计算机显示器的分辨率是800×600,表示计算机屏幕上的每一行由800个点组成,共有600行,整个计算机屏幕共有480 000个像素。像素是一个密度单位,而厘米是长度单位,两者无法比较。 阅读详情

先从入门得画园开始会一一讲解按照步骤划分。

1.第一步

//1.先定义一个Mypanel,继承JPanel,画图行就在面板上画。

//Mypanel可以理解为一个画板

//Graphics可以理解为一个画笔,提供了很多绘图的方法

<pre class="prettyprint hljs scala" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">class  MyPanel  extends  JPanel{ 
    @Override
    public void paint(Graphics g) { //绘图方法
        super.paint(g);//调用父类方法完成初始化,保留
        g.drawOval(10,10,100,100);

    }
}</pre>

2.第二步

//定义一个面板

private MyPanel mp=null;

3.第三步

public drawCircle(){

//初始化面板

mp=new MyPanel();

//把面板放人窗口

this.add(mp);

//设置窗口大小

this.setSize(400,300);

this.setVisible(true);

}

<pre class="prettyprint hljs scala" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">package com.draw;

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

/**
 * @version 1.0
 * @auther Demo龙
 */
//演示如何在面板上画出圆
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);
        //当点击窗口小叉,程序完全退出。
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);
    }
}
//1.先定义一个Mypanel,继承JPanel,画图行就在面板上画。
//Mypanel可以理解为一个画板
//Graphics可以理解为一个画笔,提供了很多绘图的方法
class  MyPanel  extends  JPanel{ 
    @Override
    public void paint(Graphics g) { //绘图方法
        super.paint(g);//调用父类方法完成初始化,保留
        g.drawOval(10,10,100,100);

    }
}</pre>

//当点击窗口小叉,程序完全退出。

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

演示结果

2.绘图方法

<pre class="prettyprint hljs scala" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">package com.draw;

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

/**
 * @version 1.0
 * @auther Demo龙
 */
//演示如何在面板上画出圆
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);
        //当点击窗口小叉,程序完全退出。
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);//可以显示
    }
}
//1.先定义一个Mypanel,继承JPanel,画图行就在面板上画。
//Mypanel可以理解为一个画板
//Graphics可以理解为一个画笔,提供了很多绘图的方法
class  MyPanel  extends  JPanel{ 
    @Override
    public void paint(Graphics g) { //绘图方法
        super.paint(g);//调用父类方法完成初始化,保留
        //g.drawOval(10,10,100,100);

        //演示绘制不同的图形..
        //画直线 drawLine(int x1,int y1,int x2,int y2)
        //g.drawLine(10, 10, 100, 100);
        //画矩形边框 drawRect(int x, int y, int width, int height)
        //g.drawRect(10, 10, 100, 100);
        //画椭圆边框 drawOval(int x, int y, int width, int height)
        //填充矩形 fillRect(int x, int y, int width, int height)
        //设置画笔的颜色
        //g.setColor(Color.blue);
        //g.fillRect(10, 10, 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 图片资源
        Image image = Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/QQ图片20211130145347.jpg"));
        g.drawImage(image, 10, 10, 320, 221, this);
        //画字符串 drawString(String str, int x, int y)//写字
        //给画笔设置颜色和字体
        //g.setColor(Color.black);
        //g.setFont(new Font("宋体", Font.BOLD, 40));
        //这里设置的 100, 100, 是 "北京你好"左下角
        //g.drawString("Demo龙", 100, 100);
        //设置画笔的字体 setFont(Font font)
        //设置画笔的颜色 setColor(Color c)

    }
}</pre>

1.//画直线

drawLine(int x1,int y1,int x2,int y2)

//g.drawLine(10, 10, 100, 100);

演示结果

2.//画矩形边框

drawRect(int x, int y, int width, int height)

//g.drawRect(10, 10, 100, 100);

3.//画椭圆边框

drawOval(int x, int y, int width, int height)

4.//填充矩形 (设置画笔的颜色)

fillRect(int x, int y, int width, int height)

//设置画笔的颜色

//g.setColor(Color.blue);

//g.fillRect(10, 10, 100, 100);

5.//填充椭圆

fillOval(int x, int y, int width, int height)

// g.setColor(Color.red);

//g.fillOval(10, 10, 100, 100);

6.//画图片

drawImage(Image img, int x, int y, …)

//1. 获取图片资源, /bg.png 表示在该项目的根目录去获取 bg.png 图片资源

//Image image = Toolkit.getDefaultToolkit().getImage(Panel.class.getResource(“/QQ图片20211130145347.jpg”));

//g.drawImage(image, 10, 10, 320, 221, this);

7.//画字符串

drawString(String str, int x, int y)//写字

//给画笔设置颜色和字体

//g.setColor(Color.black);

//g.setFont(new Font(“宋体”, Font.BOLD, 40));

//这里设置的 100, 100, 是 "Demo龙"左下角

//g.drawString(“Demo龙”, 100, 100);

//设置画笔的字体 setFont(Font font)

//设置画笔的颜色 setColor(Color c)

3.绘制坦克

1.创建父类坦克

<pre class="prettyprint hljs java" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">package com.tankgame01;

/**
 * @version 1.0
 * @auther Demo龙
 */
public class  Tank  { 
    private int x;//坦克横坐标
    private int y;//坦克纵坐标

    public  Tank(int x,  int y)  { 
        this.x = x;
        this.y = y;
    }

    public  int  getX()  { 
        return x;
    }

    public  void  setX(int x)  { 
        this.x = x;
    }

    public  int  getY()  { 
        return y;
    }

    public  void  setY(int y)  { 
        this.y = y;
    }
}</pre>

2.创建子类主角坦克

<pre class="prettyprint hljs scala" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">package com.tankgame01;

/**
 * @version 1.0
 * @auther Demo龙
 */
//主角坦克
public class  Hero  extends  Tank{ 
    public Hero(int x, int y) { //构造器
        super(x, y);
    }

}</pre>

定义画板画出坦克

<pre class="prettyprint hljs java" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">package com.tankgame01;

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

/**
 * @version 1.0
 * @auther Demo龙
 */
//坦克大战的绘图区域
public class  MyPanel  extends  JPanel  { 
    //定义我的坦克
    Hero hero=null;

    public  MyPanel()  { 
        hero =new Hero(100,100);//初始胡自己的坦克
    }

    @Override
    public  void  paint(Graphics g)  { 
        super.paint(g);
        g.fillRect(0,0,1000,750);//填充矩形默认黑色

        //画出坦克封装方法。
        drawtank(hero.getX(),hero.getY(),g,0,0);
    }
    /**
     * @param x      坦克的左上角x坐标
     * @param y      坦克的左上角y坐标
     * @param g      画笔
     * @param direct 坦克方向(上下左右)
     * @param type   坦克类型
     */
    //编写方法,封装坦克
    public  void  drawtank(int x,int y,Graphics g,int direct,int type){ 
        switch (type){ 
            case 0://我们的坦克
                g.setColor(Color.cyan);
                break;
            case 1://敌人的坦克
                g.setColor(Color.yellow);
                break;
        }
        switch (direct) { 
            case 0://我们的坦克
                g.fill3DRect(x, y, 10, 60, false);
                g.fill3DRect(x + 30, y, 10, 60, false);//画出坦克右边轮子
                g.fill3DRect(x + 10, y + 10, 20, 40, false);//画出坦克盖子
                g.fillOval(x + 10, y + 20, 20, 20);//画出圆形盖子
                g.drawLine(x + 20, y + 30, x + 20, y);//画出炮筒
                break;
            default:
                System.out.println("暂时没有处理");
        }
    }
}</pre>

4.创建坦克对象

<pre class="prettyprint hljs scala" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">package com.tankgame01;

import javax.swing.*;

/**
 * @version 1.0
 * @auther Demo龙
 */
public class tankgame01 extends  JFrame  { 
    //定义MyPanel
    MyPanel mp=null;
    public static void main(String[] args) { 
        new tankgame01();
    }
    public tankgame01() { 
        mp=new MyPanel();
        this.add(mp);
        this.setSize(1000,750);
        //当点击窗口小叉,程序完全退出。
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);//可以显示
    }
}</pre>

坦克演示结果

通俗讲解Java绘图功能机制以及绘图框架 本文将带您快速学习或回顾Java绘图的机制以及框架,内容包括JFrame、JPanel的使用原理,使用的基本方法。 阅读详情

相关推荐

解析vCard 3.0:提取电子名片中的姓名

N:LastName;FirstName;;;END:VCARD和END:VCARD标记数据块的开始和结束。N字段存储结构化姓名(分号分隔)。FN字段为直接可读的显示名称。其他字段如TELEMAIL等保存联系信息。

qq_45797625的博客 2783

Java绘图技术

坐标体系介绍 下图说明了Java坐标系。坐标原点位于左上角,以像素为单位。在Java坐标系中,第一 个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当 前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 绘图还必须要搞清个非常重要的概念像素一个像素等于多少厘米? 计算机在屏幕上显示的内容都是由屏幕上的每一个像素组成的。例如,计算机显示 器的分辨率是800x 600,表示计算机屏幕上的每一行由800个 点组成,共有600行, 整个计算机屏幕共有480 000个像素。像素

愿你有前程可奔赴,亦有青春可回顾 2402

CoaXPress协议入门(1)---- CXP测试套件

CoaXPress (简称CXP)是指一种采用同轴线缆进行互联的相机数据传输标准,主要用于替代之前的Camera Link协议,常见于科学相机、工业相机、医学图像、航空防务等场景。CXP是一个非对称的高速点对点串行传输协议,主要用于传输视频和静态图像,线缆多使用单条或多条同轴电缆。CXP易于集成,可以获得灵活可靠的性能,通过使用标准的同轴线缆,比如RG59 和 RG6规格(推荐使用RG6),并且图像、控制通讯、触发、电源都可以使用同一条线缆。

素手挽剑 9521

Java绘图

绘图可以在应用程序中绘制图片、文字、图形等,在Java中主要可以使用Graphics和Graphics2D进行绘图,其中Graphics类是所有图形上下文的抽象基类,而Graphics2D就继承了Graphics类。而Graphics功能没有Graphics2D强大,Graphics2D是Graphics的扩展。 构造一个新的Graphics2D对象,因为Graphics2D是抽象类,所以无法直...

田野上的风筝 4万+

AS7341光谱传感器实战:如何用STM32F103精准测量环境色温(附完整代码)

本文详细介绍了如何使用STM32F103驱动AS7341光谱传感器实现环境色温的精准测量。从硬件连接到驱动开发,再到色温计算算法的实现,提供了完整的代码示例和优化建议,帮助开发者在智能照明、农业监测等领域快速应用AS7341进行高精度色温检测。

weixin_30352645的博客 478

开发基于GDL235KBQ6开发板的IAP升级程序(HEX协议+串口空闲中断 + DMA接收数据)

使用GDL235kB开发板,实现串口iap升级程序的bootloader代码编写,app为led灯闪烁,并完成通信c代码

zhaozijuncc的博客 648

Java绘图和事件处理机制

详细介绍Java中的绘图机制,以及Java中的事件处理机制

m0_63404275的博客 368

MySQL等保三级合规实践:如何安全配置root账户的本地与受信主机登录策略

本文详细介绍了MySQL在等保三级合规框架下如何安全配置root账户的本地与受信主机登录策略。通过分析root账户的特殊保护需求,提供三种安全加固方案,包括限制访问范围、限定登录IP和完全禁止远程登录,并指导创建安全的远程管理账户。文章还涵盖了密码策略强化、日志审计配置和网络层防护等关键合规要求,帮助用户实现MySQL的等保三级全面合规。

weixin_42522964的博客 260

java图像图形处理_JAVA 图形处理基础

JAVA的绘图功能非常丰富,绘图包括字体、颜色、图形。一、关于JAVA的绘图机制。JAVA中的任何一个图形组件,小到文本框、标签,大到一个FRAME,一个DIALOG,都有一个专门负责显示其界面的函数,这个函数名称是固定的:paint,它的原型为: publicvoid paint(Graphics g) { …… } 每当组件大小、位置、组件内容发生变化时,该函数即负责生成新的图形界面显示。由于...

weixin_39874379的博客 358

SAP DRC 是什么?一文读懂 SAP Document and Reporting Compliance 的定位、架构与落地案例

把视线拉长,会发现SAP DRC的价值并不仅是用来交差的工具。它更像是企业在全球化经营中建设的一套公共底座:既能以最低的重复成本去应对各国不断演进的监管要求,也能为财务数字化与供应链协同提供可信数据回路。依托本地与云的分层职责、与的生态联动、以及按国家不断更新的任务目录,企业可以将合规变成一种标准化、工程化、可持续运营的能力。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1656

基于ESP32的智能无线广播系统开发博客

通过本项目的开发,我们成功地实现了基于ESP32的智能无线广播系统。该系统不仅具备传统广播的功能,还实现了通过Wi-Fi无线传输音频、实时广播和智能控制等多种先进功能。未来,随着技术的进一步发展,我们还可以扩展更多功能,如智能推荐广播内容、支持语音识别和控制等。希望本项目能够为嵌入式开发人员提供一些思路和参考,帮助大家在实际开发中更好地应用ESP32平台,开发出更加智能和实用的无线广播系统。

2201_76125393的博客 424

java学习脚印:深入java绘图机制

java学习脚印:深入java绘图机制 本文取材于Oracle官网painting in AWT and Swing,经过仔细研读,加上实践后整理所得; 文中比较详细介绍了java AWT与Swing框架的发展历史,绘图处理中的关键概念,以及绘图处理的过程、差异、和编写代码的指导建议。

王定桥的专栏 1万+

Open3D DBSCAN聚类

DBSCAN算法做为一种有名的密度聚类算法,它是通过邻域参数(Distance,MinPts)来刻画样本分布的紧密程度。而在真正开始之前,首先要理解下面这几个概念:更为具体的内容也可参考这篇文章点云DBSCAN聚类算法。...

dayuhaitang1的博客 1801

【Java】绘图入门和机制,绘图方法演示(绘制坦克)

***@autherDemo龙*///坦克大战的绘图区域publicclassMyPanelextendsJPanel{//定义我的坦克Herohero=null;//初始胡自己的坦克}@Overridepublicvoidpaint(Graphicsg){//填充矩形默认黑色//画出坦克封装方法。}/***@paramx坦克的左上角x坐标*@paramy坦克的左上角y坐标*@paramg画笔。.........

qq_59708493的博客 1146

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Java绘图Swing和事件处理机制

像素是衡量图像分辨率的单位,像素点越多,图像越清晰,细节越多,但图像文件可能不一定小;像素点越少,图像细节越少,看起来可能模糊一些,但图像尺寸(显示大小)与实际像素点多少不直接相关,而是取决于显示设备的分辨率和图像的缩放设置。简单来说,像素多意味着图像信息丰富、清晰,而像素少则图像可能模糊,但图像的大小(显示尺寸)与像素数量没有必然联系。

2201_75798871的博客 350

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

简单绘图程序

Java有完善的图形库和用于创建图形用户界面(GUI)的工具,比如Swing,AWT,以及JavaFX。这里主要导入swing和awt这两个包来实现绘图UI。

2401_87353928的博客 1697

java绘图机制

下图说明了Java坐标系,坐标原点位于左上角,以像素为单位, 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向, 距离坐标原点y个像素。

2403_86949771的博客 299

JAVA中的观察者机制在绘图程序中的应用

 JAVA中的观察者机制在绘图程序中的应用java.util.*包中提供了一个有趣的类:Observable类,和一个Observer接口。利用这两个类我们可以把一个类对象中的信息更改传递给其他许多类的对象,然后在做出进一步的处理。这种机制我们可以成为观察者/被观察者机制,或者称为文档(模型)/视图机制。请看下面的代码:我们设计了三个类:一个类的对象充当被观察者的角色,或者说是充当模型

梅森上校的博客 业精于勤荒于嬉,形成于思毁于随。 1150

java中的绘图机制_java绘图机制

JAVA的绘图功能非常丰富,绘图包括字体、颜色、图形,以下我们将分技术专题来讲。一、关于JAVA的绘图机制。JAVA中的任何一个图形组件,小到文本框、标签,大到一个FRAME,一个DIALOG,都有一个专门负责显示其界面的函数,这个函数名称是固定的:paint,它的原型为:public void paint(Graphics g){……}每当组件大小、位置、组件内容发生变化时,该函数即负责生成新的...

weixin_36034883的博客 154

java中的绘图机制_Java绘图机制

JAVA的绘图功能非常丰富,绘图包括字体、颜色、图形,以下我们将分技术专题来讲。一、关于JAVA的绘图机制。JAVA中的任何一个图形组件,小到文本框、标签,大到一个FRAME,一个DIALOG,都有一个专门负责显示其界面的函数,这个函数名称是固定的:paint,它的原型为: public void paint(Graphics g) { …… } 每当组件大小、位置、组件内容发生变化时,该函数即负...

weixin_42469444的博客 273

JAVA坦克大战1.0——绘图入门和机制

但这里和平时不同的是,我们这里继承了一个JFrame类,这里的JFrame类是一个框架,所以我们这里理解起来就不要从底层代码来理解他这样会增加我们理解的难度。而我们的画板就是刚刚我们定义的MyPanel类,但是我们平时写代码并不会写公开类的构造函数(当然,这有可能是因为我之前写的代码比较简单),但这里为了把画板嵌入到框架里面去,我这里先定义了一个类对象指向画板,让通过this.add()把画板嵌入,然后用setSize()定义画框的大小,然后用setVisble(true)让内容可视化。

m0_73245690的博客 1135

AndroidUI之绘图机制和原理 最完整的文章

安卓深层绘图原理,成为安卓UI高手,从位图,矩阵,画笔,绘布,解析绘图技术。

Tamic (大白) 7212

Java的绘图入门

java的绘图功能非常丰富,绘图包括字体、颜色、图形,以下我们将分技术专题来讲。   一、关于java的绘图机制。   java中的任何一个图形组件,小到文本框、标签,大到一个frame,一个dialog,都有一个专门负责显示其界面的函数,这个函数名称是固定的:paint,它的原型为: public void paint(graphics g) { …… } 每当组件大小、位置、组件内容发生变

ak47csu的专栏 1101
上一篇: AOP切入点表达式有哪五种通知类型
下一篇: 如何精简的理解Java中的多线程
Java_ttcd
博客等级 码龄4年 198粉丝 190原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值