- java.lang.Object
-
- java.awt.Component
-
- java.awt.Canvas
-
- All Implemented Interfaces:
- ImageObserver, MenuContainer, Serializable, Accessible
public class Canvas extends Component implements Accessible
ACanvas
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. Thepaint
method must be overridden in order to perform custom graphics on the canvas.- Since:
- JDK1.0
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description protected class
Canvas.AccessibleAWTCanvas
This class implements accessibility support for theCanvas
class.-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor and Description Canvas()
Constructs a new Canvas.Canvas(GraphicsConfiguration config)
Constructs a new Canvas given a GraphicsConfiguration object.
-
Method Summary
Methods 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 theBufferStrategy
used by this component.void
paint(Graphics g)
Paints this canvas.void
update(Graphics g)
Updates this canvas.-
Methods inherited from class 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, 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, validate
-
-
-
-
Constructor Detail
-
Canvas
public Canvas()
Constructs a new Canvas.
-
Canvas
public Canvas(GraphicsConfiguration config)
Constructs a new Canvas given a GraphicsConfiguration object.- Parameters:
config
- a reference to a GraphicsConfiguration object.- See Also:
GraphicsConfiguration
-
-
Method Detail
-
addNotify
public void addNotify()
Creates the peer of the canvas. This peer allows you to change the user interface of the canvas without changing its functionality.- Overrides:
addNotify
in classComponent
- See Also:
Toolkit.createCanvas(java.awt.Canvas)
,Component.getToolkit()
-
paint
public void paint(Graphics g)
Paints this canvas.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).- Overrides:
paint
in classComponent
- Parameters:
g
- the specified Graphics context- See Also:
update(Graphics)
,Component.paint(Graphics)
-
update
public void update(Graphics g)
Updates this canvas.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'spaint
method. Note: applications that override this method should either call super.update(g) or incorporate the functionality described above into their own code.- Overrides:
update
in classComponent
- Parameters:
g
- the specified Graphics context- See Also:
paint(Graphics)
,Component.update(Graphics)
-
createBufferStrategy
public void createBufferStrategy(int numBuffers)
Creates a new strategy for multi-buffering on this component. Multi-buffering is useful for rendering performance. This method attempts to create the best strategy available with the number of buffers supplied. It will always create aBufferStrategy
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.
- Parameters:
numBuffers
- number of buffers to create, including the front buffer- Throws:
IllegalArgumentException
- if numBuffers is less than 1.IllegalStateException
- if the component is not displayable- Since:
- 1.4
- See Also:
Component.isDisplayable()
,getBufferStrategy()
-
createBufferStrategy
public void createBufferStrategy(int numBuffers, BufferCapabilities caps) throws AWTException
Creates a new strategy for multi-buffering on this component with the required buffer capabilities. This is useful, for example, if only accelerated memory or page flipping is desired (as specified by the buffer capabilities).Each time this method is called, the existing buffer strategy for this component is discarded.
- Parameters:
numBuffers
- number of buffers to createcaps
- the required capabilities for creating the buffer strategy; cannot benull
- Throws:
AWTException
- 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 isnull
- Since:
- 1.4
- See Also:
getBufferStrategy()
-
getBufferStrategy
public BufferStrategy getBufferStrategy()
Returns theBufferStrategy
used by this component. This method will return null if aBufferStrategy
has not yet been created or has been disposed.- Returns:
- the buffer strategy used by this component
- Since:
- 1.4
- See Also:
createBufferStrategy(int)
-
getAccessibleContext
public AccessibleContext getAccessibleContext()
Gets the AccessibleContext associated with this Canvas. For canvases, the AccessibleContext takes the form of an AccessibleAWTCanvas. A new AccessibleAWTCanvas instance is created if necessary.- Specified by:
getAccessibleContext
in interfaceAccessible
- Overrides:
getAccessibleContext
in classComponent
- Returns:
- an AccessibleAWTCanvas that serves as the AccessibleContext of this Canvas
- Since:
- 1.3
-
-
Traduction non disponible
Les API Java ne sont pas encore traduites en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.
Version en cache
22/12/2024 01:33:53 Cette version de la page est en cache (à la date du 22/12/2024 01:33:53) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 28/08/2006, dernière modification le 04/03/2020
Source du document imprimé : https://www.gaudry.be/java-api-rf-java/awt/canvas.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.