|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
pl.tph.javatacka.game.GameMenu
public class GameMenu
Klasa GameMenu
tworzy menu, w którym gracze mogą ustawić swoje
preferencje dotyczące przebiegu gry. Wśród dostępnych opcji są następujące:
JFrame
z pakietu
Swing.
GameMenu
należy tworzyć w wątku dystrybucji
zdarzeń. Nowo utworzone menu należy następnie uwidocznić posługując się
metodą klasy JFrame
o nazwie setVisible()
.
GamePreferences
, którego referencję
można uzyskać przy pomocy metody getGamePreferences()
.
JFrame
,
GamePreferences
,
Serialized FormNested Class Summary |
---|
Nested classes/interfaces inherited from class javax.swing.JFrame |
---|
javax.swing.JFrame.AccessibleJFrame |
Nested classes/interfaces inherited from class java.awt.Frame |
---|
java.awt.Frame.AccessibleAWTFrame |
Nested classes/interfaces inherited from class java.awt.Window |
---|
java.awt.Window.AccessibleAWTWindow |
Nested classes/interfaces inherited from class java.awt.Container |
---|
java.awt.Container.AccessibleAWTContainer |
Nested classes/interfaces inherited from class java.awt.Component |
---|
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
Field Summary | |
---|---|
private javax.swing.JButton[] |
colors
Przyciski wyboru kolorów dla krzywych należących do graczy. |
private boolean |
done
Flaga informująca czy został już kliknięty przycisk Start! |
private javax.swing.JButton[][] |
keys
Przyciski informujące o sterowaniu poszczególnych graczy. |
private static int |
MAX_PLAYERS
Maksymalna dopuszczalna (i wyświetlana) liczba graczy. |
private javax.swing.JSpinner |
maxScore
Pole wyboru limitu punktów w grze. |
private javax.swing.JPanel |
panel
Główny panel, w którym wyświetlane są wszystkie komponenty menu. |
private javax.swing.JTextField[] |
players
Pola tekstowe do wpisywania nazw graczy. |
private GamePreferences |
pref
Obiekt przechowujący dane o ustawionych w menu preferencjach. |
private javax.swing.JButton |
quit
Przycisk Wyjście. |
private javax.swing.JSlider |
speed
Suwak wyboru prędkości gry. |
private javax.swing.JButton |
start
Przycisk Start! |
Fields inherited from class javax.swing.JFrame |
---|
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled |
Fields inherited from class java.awt.Frame |
---|
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR |
Fields inherited from class java.awt.Component |
---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
Fields inherited from interface javax.swing.WindowConstants |
---|
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE |
Fields inherited from interface java.awt.image.ImageObserver |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
---|---|
GameMenu()
Bezargumentowy konstruktor klasy GameMenu , który konfiguruje
okno menu gry. |
Method Summary | |
---|---|
GamePreferences |
getGamePreferences()
Zwraca referencję na obiekt GamePreferences , który
przechowuje informacje o wybranych przez graczy opcjach gry. |
private static int |
getLeftKeyCode(int player)
Pomocnicza metoda zwracająca kod lewego klawisza dla gracza o podanym numerze lub -1 , gdy podany numer gracza jest niepoprawny. |
private static int |
getRightKeyCode(int player)
Pomocnicza metoda zwracająca kod prawego klawisza dla gracza o podanym numerze lub -1 , gdy podany numer gracza jest niepoprawny. |
boolean |
isDone()
Zwraca true jeśli został kliknięty przycisk Start! |
void |
setDone(boolean done)
Ustawia flagę gotowości menu na podaną wartość logiczną. |
Methods inherited from class javax.swing.JFrame |
---|
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update |
Methods inherited from class java.awt.Frame |
---|
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated |
Methods inherited from class java.awt.Window |
---|
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront |
Methods inherited from class java.awt.Container |
---|
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree |
Methods inherited from class java.awt.Component |
---|
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.awt.MenuContainer |
---|
getFont, postEvent |
Field Detail |
---|
private static final int MAX_PLAYERS
private boolean done
private GamePreferences pref
private javax.swing.JPanel panel
private javax.swing.JButton[] colors
private javax.swing.JButton[][] keys
private javax.swing.JButton start
private javax.swing.JButton quit
private javax.swing.JSlider speed
private javax.swing.JSpinner maxScore
private javax.swing.JTextField[] players
Constructor Detail |
---|
public GameMenu()
GameMenu
, który konfiguruje
okno menu gry.
Method Detail |
---|
public boolean isDone()
true
jeśli został kliknięty przycisk Start!
i preferencje zostały wczytane do obiektu klasy
GamePreferences
. Można je teraz odczytać przy użyciu metody
getGamePreferences()
.
GamePreferences
,
getGamePreferences()
public void setDone(boolean done)
false
jeśli chcemy użyć to okno
menu ponownie (po wciśnięciu przycisku Start!)
done
- wartość logiczna flagi gotowościpublic GamePreferences getGamePreferences()
GamePreferences
, który
przechowuje informacje o wybranych przez graczy opcjach gry. Przed
wywołaniem tej metody warto sprawdzić czy menu jest już gotowe (czyli
czy dane zostały wczytane po kliknięciu przycisku Start!) przy
pomocy metody isDone()
.
isDone()
private static int getLeftKeyCode(int player)
-1
, gdy podany numer gracza jest niepoprawny.
player
- numer gracza (od 0 do 5)
KeyEvent
,
MouseEvent
private static int getRightKeyCode(int player)
-1
, gdy podany numer gracza jest niepoprawny.
player
- numer gracza (od 0 do 5)
KeyEvent
,
MouseEvent
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |