public class Canvas extends Component implements Accessible
Canvas component represents a blank rectangular
 area of the screen onto which the application can draw or from
 which the application can trap input events from the user.
 
 An application must subclass the Canvas class in
 order to get useful functionality such as creating a custom
 component. The paint method must be overridden
 in order to perform custom graphics on the canvas.
| Modifier and Type | Class and Description | 
|---|---|
| protected class  | Canvas.AccessibleAWTCanvasThis class implements accessibility support for the
  Canvasclass. | 
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategyaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description | 
|---|
| Canvas()Constructs a new Canvas. | 
| Canvas(GraphicsConfiguration config)Constructs a new Canvas given a GraphicsConfiguration object. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | addNotify()Creates the peer of the canvas. | 
| void | createBufferStrategy(int numBuffers)Creates a new strategy for multi-buffering on this component. | 
| void | createBufferStrategy(int numBuffers,
                    BufferCapabilities caps)Creates a new strategy for multi-buffering on this component with the
 required buffer capabilities. | 
| AccessibleContext | getAccessibleContext()Gets the AccessibleContext associated with this Canvas. | 
| BufferStrategy | getBufferStrategy()Returns the  BufferStrategyused by this component. | 
| void | paint(Graphics g)Paints this canvas. | 
| void | update(Graphics g)Updates this canvas. | 
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, revalidate, 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, validatepublic Canvas()
public Canvas(GraphicsConfiguration config)
config - a reference to a GraphicsConfiguration object.GraphicsConfigurationpublic void addNotify()
addNotify in class ComponentToolkit.createCanvas(java.awt.Canvas), 
Component.getToolkit()public void paint(Graphics g)
 Most applications that subclass Canvas should
 override this method in order to perform some useful operation
 (typically, custom painting of the canvas).
 The default operation is simply to clear the canvas.
 Applications that override this method need not call
 super.paint(g).
paint in class Componentg - the specified Graphics contextupdate(Graphics), 
Component.paint(Graphics)public void update(Graphics g)
 This method is called in response to a call to repaint.
 The canvas is first cleared by filling it with the background
 color, and then completely redrawn by calling this canvas's
 paint method.
 Note: applications that override this method should either call
 super.update(g) or incorporate the functionality described
 above into their own code.
update in class Componentg - the specified Graphics contextpaint(Graphics), 
Component.update(Graphics)public void createBufferStrategy(int numBuffers)
BufferStrategy
 with that number of buffers.
 A page-flipping strategy is attempted first, then a blitting strategy
 using accelerated buffers.  Finally, an unaccelerated blitting
 strategy is used.
 Each time this method is called, the existing buffer strategy for this component is discarded.
numBuffers - number of buffers to create, including the front bufferIllegalArgumentException - if numBuffers is less than 1.IllegalStateException - if the component is not displayableComponent.isDisplayable(), 
getBufferStrategy()public void createBufferStrategy(int numBuffers,
                                 BufferCapabilities caps)
                          throws AWTException
Each time this method is called, the existing buffer strategy for this component is discarded.
numBuffers - number of buffers to createcaps - the required capabilities for creating the buffer strategy;
 cannot be nullAWTException - if the capabilities supplied could not be
 supported or met; this may happen, for example, if there is not enough
 accelerated memory currently available, or if page flipping is specified
 but not possible.IllegalArgumentException - if numBuffers is less than 1, or if
 caps is nullgetBufferStrategy()public BufferStrategy getBufferStrategy()
BufferStrategy used by this component.  This
 method will return null if a BufferStrategy has not yet
 been created or has been disposed.createBufferStrategy(int)public AccessibleContext getAccessibleContext()
getAccessibleContext in interface AccessiblegetAccessibleContext in class Component Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2017, Oracle and/or its affiliates.  All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.