java canvas的使用_使用Canvas绘制Java

我想绘制

Java的Canvas,但是不能让它工作,因为我不知道我在做什么.这是我的简单代码:

import javax.swing.JFrame;

import java.awt.Canvas;

import java.awt.Graphics;

import java.awt.Color;

public class Program

{

public static void main(String[] args)

{

JFrame frmMain = new JFrame();

frmMain.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frmMain.setSize(400, 400);

Canvas cnvs = new Canvas();

cnvs.setSize(400, 400);

frmMain.add(cnvs);

frmMain.setVisible(true);

Graphics g = cnvs.getGraphics();

g.setColor(new Color(255, 0, 0));

g.drawString("Hello", 200, 200);

}

}

没有任何东西出现在窗口上.

我错了认为画布是纸,图形是我的铅笔?这是怎么运作的?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中的Canvas绘图源码实例,主要是画线条、弧线、圆角矩形、三角形、文字、圆形等简单的几何图形,主要是通过创建DrawingCanvas对象canvas,为canvas设置命令监听者,实现接口CommandListener的方法,把缓冲区图像的内容绘制到画布上,画图部分代码:   int w = getWidth(); // 画布的宽度   int h = getHeight(); // 画布的高度   Image buffer = Image.createImage(w, h); // 用于绘图的缓冲图像   Graphics gc = buffer.getGraphics(); // 获取缓冲图像的图形环境   // 清除画布   public void clearScreen() {    gc.setColor(255,255,255); // 设置绘图颜色为白色    gc.fillRect(0,0,w,h); // 把缓冲图像填充为白色    gc.setColor(255,0,0); // 设置绘图颜色为红色   }   // 绘制直线   public void drawLine() {    setTitle("直线"); // 设置画布的标题    clearScreen(); // 清除画布    gc.drawLine(10,10,w-20,h-20); // 绘制黑色直线    gc.setColor(0,0,255); // 设置绘图颜色为蓝色    gc.drawLine(10,h/2,w-10,h/2); // 绘制蓝色直线   }   // 绘制弧   public void drawArc() {    setTitle("弧线和填充弧");    clearScreen();    gc.drawArc(5,5,w/2-20,h/2-20,60,216); // 绘制弧线    gc.drawArc(5,h/2-10,w/2-20,h/2-20,0,360); // 绘制圆    gc.setColor(0,0,255);    gc.fillArc(w/2,5,w/2-20,h/2-20,60,216); // 绘制填充弧线    gc.fillArc(w/2,h/2-10,w/2-20,h/2-20,0,360); // 绘制填充圆   }   // 绘制矩形   public void drawRect() {    setTitle("矩形和填充矩形");    clearScreen();    gc.drawRect(25,25,w/2-30,h/2-30); // 绘制矩形    gc.fillRect(w/2 25,25,w/2-30,h/2-30); // 绘制填充矩形   }   // 绘制圆角矩形   public void drawRoundRect() {    setTitle("圆角矩形和填充圆角矩形");    clearScreen();    gc.drawRoundRect(5,5,w-5-30,h/2-30,20,20); // 绘制圆角矩形    gc.setColor(0,0,255);    gc.fillRoundRect(5,h/2,w-30,h/2-30,20,20); // 绘制填充圆角矩形   }   // 绘制三角形   public void drawTriangle() {    setTitle("填充三角形");    clearScreen();    gc.fillTriangle(w/2, h/6, w/6, h/2, w/2, h/2);   }   // 绘制文字   public void drawText() {    setTitle("文字"); //设置标题    clearScreen();    gc.setFont(Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font.SIZE_SMALL)); // 设置字体    gc.drawString("Hello World!",0,0,gc.TOP|gc.LEFT); // 使用当前字体绘制文字    gc.setFont(Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD|Font.STYLE_UNDERLINED,Font.SIZE_LARGE));    gc.drawString("Hello
好的,我可以为您解答关于Java Canvas 和 Android.graphics.Canvas的基本使用Java Canvas是一个在awt,swing等GUI框架中用于绘制图形的类,它提供了一个类似画布的面板,我们可以在上面绘制各种图形和文字。 下面是Java Canvas的基本使用方法: 1. 创建一个Canvas对象: ``` Canvas canvas = new Canvas(); ``` 2. 获得一个Graphics对象: ``` Graphics g = canvas.getGraphics(); ``` 3. 使用Graphics对象绘制图形: ``` g.drawLine(0, 0, 100, 100); g.drawRect(50, 50, 100, 100); g.drawOval(100, 100, 50, 50); g.drawString("Hello, World!", 200, 200); ``` 这些方法可以绘制线条,矩形,椭圆和文本。 在Android中,Canvas是一个类用于绘制图形和文字,我们可以使用它来自定义视图或绘制自己的UI元素。 下面是Android.graphics.Canvas的基本使用方法: 1. 创建一个Canvas对象: ``` Canvas canvas = new Canvas(bitmap); ``` 这里的bitmap是我们要绘制的位图对象。 2. 使用Canvas对象绘制图形: ``` Paint paint = new Paint(); paint.setColor(Color.RED); paint.setStrokeWidth(5); canvas.drawLine(0, 0, 100, 100, paint); canvas.drawRect(50, 50, 100, 100, paint); canvas.drawOval(100, 100, 150, 150, paint); canvas.drawText("Hello, World!", 200, 200, paint); ``` 这些方法可以绘制线条,矩形,椭圆和文本。我们可以使用Paint对象来设置绘制的颜色,线条宽度等属性。 以上就是Java Canvas和Android.graphics.Canvas的基本使用方法,希望能对您有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值