JavaTM 2 Platform
Standard Ed. 6

java.awt
類別 Canvas

java.lang.Object
  繼承者 java.awt.Component
      繼承者 java.awt.Canvas
所有已實作的介面:
ImageObserver, MenuContainer, Serializable, Accessible

public class Canvas
extends Component
implements Accessible

Canvas 元件表示螢幕上一個空白矩形區域,應用程序可以在該區域內繪圖,或者可以從該區域捕獲使用者的輸入事件。

應用程序必須為 Canvas 類別創建子類別,以獲得有用的功能(如創建自定義元件)。必須覆寫 paint 方法,以便在 canvas 上執行自定義圖形。

從以下版本開始:
JDK1.0
另請參見:
序列化表格

巢狀類別摘要
protected  class Canvas.AccessibleAWTCanvas
          此類別實作對 Canvas 類別的可存取性支持。
 
從類別 java.awt.Component 繼承的巢狀類別/介面
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
欄位摘要
 
從類別 java.awt.Component 繼承的欄位
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
從介面 java.awt.image.ImageObserver 繼承的欄位
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
建構子摘要
Canvas()
          建構一個新的 Canvas。
Canvas(GraphicsConfiguration config)
          根據給定 GraphicsConfiguration 物件建構一個新的 Canvas。
 
方法摘要
 void addNotify()
          創建 canvas 的同位體。
 void createBufferStrategy(int numBuffers)
          創建一個新的策略,用於對此元件的多次緩衝。
 void createBufferStrategy(int numBuffers, BufferCapabilities caps)
          創建一個新的策略,使用所需的緩衝區能力對此元件進行多次緩衝。
 AccessibleContext getAccessibleContext()
          獲取與此 Canvas 相關的 AccessibleContext。
 BufferStrategy getBufferStrategy()
          返回由此元件使用的 BufferStrategy
 void paint(Graphics g)
          繪製此 canvas。
 void update(Graphics g)
          更新此 canvas。
 
從類別 java.awt.Component 繼承的方法
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, paramString, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, validate
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

建構子詳細資訊

Canvas

public Canvas()
建構一個新的 Canvas。


Canvas

public Canvas(GraphicsConfiguration config)
根據給定 GraphicsConfiguration 物件建構一個新的 Canvas。

參數:
config - 對 GraphicsConfiguration 物件的參考。
另請參見:
GraphicsConfiguration
方法詳細資訊

addNotify

public void addNotify()
創建 canvas 的同位體。此同位體允許您更改 canvas 的使用者介面,而不更改其功能。

覆寫:
類別 Component 中的 addNotify
另請參見:
Toolkit.createCanvas(java.awt.Canvas), Component.getToolkit()

paint

public void paint(Graphics g)
繪製此 canvas。

Canvas 創建子類別的大多數應用程序應該覆寫此方法,以便執行某個有用的操作(通常是 canvas 的自定義繪製操作)。預設操作是清理 canvas。覆寫此方法的應用程序不需要調用 super.paint(g)。

覆寫:
類別 Component 中的 paint
參數:
g - 指定的 Graphics 上下文
另請參見:
update(Graphics), Component.paint(Graphics)

update

public void update(Graphics g)
更新此 canvas。

調用此方法回應對 repaint 的調用。首先通過使用背景色填充 canvas 來清理它,然後通過調用此 canvas 的 paint 方法重繪它。註:覆寫此方法的應用程序應該調用 super.update(g),或者將上述功能合併到其自身的程式碼中。

覆寫:
類別 Component 中的 update
參數:
g - 指定的 Graphics 上下文
另請參見:
paint(Graphics), Component.update(Graphics)

createBufferStrategy

public void createBufferStrategy(int numBuffers)
創建一個新的策略,用於對此元件的多次緩衝。多次緩衝對於提高呈現性能很有用。此方法試圖使用提供的緩衝區數創建最佳可用策略。它始終創建一個使用該數量緩衝區的 BufferStrategy。首先嘗試頁面翻轉策略,然後嘗試使用加速緩衝區的位圖傳輸策略。最後,使用非加速的位圖傳輸策略。

每次調用此方法時,都會丟棄此元件現有的緩衝區策略。

參數:
numBuffers - 要創建的緩衝區數,包括前台緩衝區
拋出:
IllegalArgumentException - 如果 numBuffers 小於 1。
IllegalStateException - 如果元件不是可顯示的
從以下版本開始:
1.4
另請參見:
Component.isDisplayable(), getBufferStrategy()

createBufferStrategy

public void createBufferStrategy(int numBuffers,
                                 BufferCapabilities caps)
                          throws AWTException
創建一個新的策略,使用所需的緩衝區能力對此元件進行多次緩衝。例如,如果只需加速記憶體或頁面翻轉(由緩衝區能力指定),則這種策略很有用。

每次調用此方法時,都會丟棄此元件現有的緩衝區策略。

參數:
numBuffers - 要創建的緩衝區數量
caps - 創建緩衝區策略所要求的能力;不能為 null
拋出:
AWTException - 如果提供的能力不受支持或不能滿足要求;例如,如果當前可用的加速記憶體不夠,或者不能進行指定的頁面翻轉時,可能出現這種情況。
IllegalArgumentException - 如果 numBuffers 小於 1,或者 caps 為 null
從以下版本開始:
1.4
另請參見:
getBufferStrategy()

getBufferStrategy

public BufferStrategy getBufferStrategy()
返回由此元件使用的 BufferStrategy。如果尚未創建 BufferStrategy 或者已經用完了記憶體,則此方法返回 null。

返回:
此元件使用的緩衝區策略
從以下版本開始:
1.4
另請參見:
createBufferStrategy(int)

getAccessibleContext

public AccessibleContext getAccessibleContext()
獲取與此 Canvas 相關的 AccessibleContext。對於 canvas 來說,AccessibleContext 採用 AccessibleAWTCanvas 的形式。如果必要,創建一個新的 AccessibleAWTCanvas 實例。

指定者:
介面 Accessible 中的 getAccessibleContext
覆寫:
類別 Component 中的 getAccessibleContext
返回:
一個 AccessibleAWTCanvas,它充當此 Canvas 的 AccessibleContext
從以下版本開始:
1.3

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only