- AWT 教程
- AWT - 首页
- AWT - 概述
- AWT - 环境
- AWT - 控件
- AWT - 事件处理
- AWT - 事件类
- AWT - 事件监听器
- AWT - 事件适配器
- AWT - 布局
- AWT - 容器
- AWT - 菜单
- AWT - 图形
- AWT 有用资源
- AWT - 快速指南
- AWT - 有用资源
- AWT - 讨论
AWT 画布类
介绍
Canvas 控件代表一个矩形区域,应用程序可以在其中绘制内容或接收用户创建的输入。
类声明
以下是java.awt.Canvas类的声明
public class Canvas
extends Component
implements Accessible
类构造函数
| 序号 | 构造函数 & 描述 |
|---|---|
| 1 | Canvas() 构造一个新的 Canvas。 |
| 2 | Canvas(GraphicsConfiguration config) 给定一个 GraphicsConfiguration 对象,构造一个新的 Canvas。 |
类方法
| 序号 | 方法 & 描述 |
|---|---|
| 1 | void addNotify() 创建画布的同级。 |
| 2 | void createBufferStrategy(int numBuffers) 为此组件创建多缓冲的新策略。 |
| 3 | void createBufferStrategy(int numBuffers, BufferCapabilities caps) 为此组件创建具有所需缓冲功能的多缓冲的新策略。 |
| 4 | AccessibleContext getAccessibleContext() 获取与此 Canvas 关联的 AccessibleContext。 |
| 5 | BufferStrategy getBufferStrategy() 返回此组件使用的 BufferStrategy。 |
| 6 | void paint(Graphics g) 绘制此画布。 |
| 7 | void update(Graphics g) 更新此画布。 |
继承的方法
此类继承自以下类的方法
java.awt.Component
java.lang.Object
Canvas 示例
使用您选择的任何编辑器创建以下 Java 程序,例如在D:/ > AWT > com > tutorialspoint > gui >
AwtControlDemo.javapackage com.tutorialspoint.gui;
import java.awt.*;
import java.awt.event.*;
public class AwtControlDemo {
private Frame mainFrame;
private Label headerLabel;
private Label statusLabel;
private Panel controlPanel;
public AwtControlDemo(){
prepareGUI();
}
public static void main(String[] args){
AwtControlDemo awtControlDemo = new AwtControlDemo();
awtControlDemo.showCanvasDemo();
}
private void prepareGUI(){
mainFrame = new Frame("Java AWT Examples");
mainFrame.setSize(400,400);
mainFrame.setLayout(new GridLayout(3, 1));
mainFrame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowEvent){
System.exit(0);
}
});
headerLabel = new Label();
headerLabel.setAlignment(Label.CENTER);
statusLabel = new Label();
statusLabel.setAlignment(Label.CENTER);
statusLabel.setSize(350,100);
controlPanel = new Panel();
controlPanel.setLayout(new FlowLayout());
mainFrame.add(headerLabel);
mainFrame.add(controlPanel);
mainFrame.add(statusLabel);
mainFrame.setVisible(true);
}
private void showCanvasDemo(){
headerLabel.setText("Control in action: Canvas");
controlPanel.add(new MyCanvas());
mainFrame.setVisible(true);
}
class MyCanvas extends Canvas {
public MyCanvas () {
setBackground (Color.GRAY);
setSize(300, 300);
}
public void paint (Graphics g) {
Graphics2D g2;
g2 = (Graphics2D) g;
g2.drawString ("It is a custom canvas area", 70, 70);
}
}
}
使用命令提示符编译程序。转到D:/ > AWT并键入以下命令。
D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java
如果没有错误,则表示编译成功。使用以下命令运行程序。
D:\AWT>java com.tutorialspoint.gui.AwtControlDemo
验证以下输出
awt_controls.htm
广告