修飾子
public class Canvas
父類別
java.awt.Component
實作介面
ImageObserver
MenuContainer
Serializable
Accessible
建構子
public Canvas()
public Canvas(GraphicsConfiguration config)
常用方法
名稱 敘述 paint() 畫圖
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | import java.awt.*; import java.awt.event.*; public class CanvasDemo extends Canvas { public static void main(String[] args) { Frame frame = new Frame( "AWTDemo" ); frame.addWindowListener( new AdapterDemo()); frame.setSize( 200 , 220 ); CanvasDemo canvas = new CanvasDemo(); frame.add(canvas, BorderLayout.CENTER); frame.setVisible( true ); } public void paint(Graphics g) { g.drawRect( 10 , 10 , 180 , 180 ); } } class AdapterDemo extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit( 0 ); } } /* 《程式語言教學誌》的範例程式 檔名:CanvasDemo.java 功能:示範 Java 程式 作者:張凱慶 時間:西元 2012 年 3 月 */ |
此例的 CanvasDemo 繼承 Canvas
4 | public class CanvasDemo extends Canvas { |
然後改寫 paint() 方法,這裡在 CanvasDemo 中畫出一個正方形
16 17 18 | public void paint(Graphics g) { g.drawRect( 10 , 10 , 180 , 180 ); } |
在 main() 中另外建立一個 Frame 物件,然後將 CanvasDemo 放入 Frame 之中,這樣顯示視窗就會直接畫出正方形
32 33 34 35 36 37 38 39 40 41 | public static void main(String[] args) { Frame frame = new Frame( "AWTDemo" ); frame.addWindowListener( new AdapterDemo()); frame.setSize( 200 , 220 ); CanvasDemo canvas = new CanvasDemo(); frame.add(canvas, BorderLayout.CENTER); frame.setVisible( true ); } |
編譯後執行,結果如下

中英文術語對照 | |
---|---|
類別 | class |
建構子 | constructor |
方法 | method |
您可以繼續參考
AWT 元件
相關目錄
Java API 分類導覽
Java 教材
首頁
參考資料
http://docs.oracle.com/javase/6/docs/api/java/awt/Canvas.html
沒有留言:
張貼留言