public class SpritePanel
extends javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
SpritePanel()
Creates the panel and the timer that will drive the animation.
|
Modifier and Type | Method and Description |
---|---|
void |
addSprite(Sprite s)
Adds a sprite to this panel.
|
void |
clear()
Removes all sprites, including bullets, from this SpritePanel.
|
protected void |
doKeyPress(java.lang.String keyStrokeString)
This method is called when the user presses a key on the keyboard, but
only if that key has been set up by calling by calling this panel's
installKeyPress() method.
|
protected void |
drawBackground(java.awt.Graphics g,
int frameNumber)
This method is called in the paintComponent() method after the panel has
been filled with the panel's background color but before any of the sprites
are drawn.
|
Sprite |
getBullet(int i)
Gets the i-th Bullet sprite.
|
int |
getBulletCount()
Tells how many Bullet sprites are in this SpritePanel.
|
int |
getFrameDelay()
Returns the number of milliseconds between frames.
|
Sprite |
getSprite(int i)
Gets the i-th non-bullet sprite.
|
int |
getSpriteCount()
Tells how many non-bullet sprites are in this SpritePanel.
|
void |
go()
Starts or restarts the animation.
|
protected void |
installKeyPress(java.lang.String keyStrokeString)
A subclass that wants to respond to the keyboard should override this
method.
|
boolean |
isPaused()
Tells whether an animation is running.
|
protected void |
paintComponent(java.awt.Graphics g) |
void |
pause()
If an animation is running, this stops it.
|
protected void |
prepareForNextFrame(int frameNumber)
This method is called once for each frame in an animation to give the
panel a chance to update its state for the new frame.
|
void |
setFrameDelay(int milliseconds)
Sets the number of milliseconds per frame.
|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public SpritePanel()
public void addSprite(Sprite s)
public void clear()
protected void doKeyPress(java.lang.String keyStrokeString)
keyStrokeString
- A string describing the key. This will be
the same string that was "installed" by calling installKeyPress().protected void drawBackground(java.awt.Graphics g, int frameNumber)
frameNumber
- the frame number for the frame that is being drawn. The frameNumber
only changes if an animation is in progress, and this method can be called
more than once with the same frame number.public Sprite getBullet(int i)
public int getBulletCount()
public int getFrameDelay()
public Sprite getSprite(int i)
public int getSpriteCount()
public void go()
protected void installKeyPress(java.lang.String keyStrokeString)
keyStrokeString
- A string describing the key. Only certain
values are allowed, including: "SPACE", for the space bar;
"UP", "DOWN", "LEFT", and "RIGHT" for the arrow keys; "A", "B", ...
"Z", for the letter keys; "0", "1", ..."9", for the number keys;
"PERIOD", "COMMA", "TAB", "ENTER". Note that keys will auto-repeat
when they are held down by the user. The method is called for
each autorepeat as well as for the original keypress.public boolean isPaused()
protected void paintComponent(java.awt.Graphics g)
paintComponent
in class javax.swing.JComponent
public void pause()
protected void prepareForNextFrame(int frameNumber)
public void setFrameDelay(int milliseconds)
milliseconds
- time between frames. The minimum value is 5.
If a smaller value is specified, it is silently change to 5.