public static class GRobot.KontextováPonuka extends JPopupMenu
KontextováPonuka
spolu s triedou KontextováPoložka
umožňujú používanie kontextových
ponúk. Voľba položky kontextovej ponuky spôsobí vznik udalosti voľbaKontextovejPoložky
.
V uvedenej obsluhe udalosti môžeme zistiť, ktorá položka bola zvolená
metódou dajeUdalostí.kontextováPoložka()
alebo Svet.poslednáKontextováPoložka()
.
// Vytvoríme ponuku:
final
KontextováPonuka
mojaKontextováPonuka =new
KontextováPonuka
();// Vytvoríme všetky položky, niektoré priamo pridávajúc do ponuky:
final
KontextováPoložka
novýObjekt = mojaKontextováPonuka.pridajPoložku
("Nový objekt"
);final
KontextováPoložka
preusporiadať = mojaKontextováPonuka.pridajPoložku
("Preusporiadať"
);final
KontextováPoložka
ďalšiaAkcia1 =new
KontextováPoložka
("Ďalšia akcia 1"
);final
KontextováPoložka
ďalšiaAkcia2 =new
KontextováPoložka
("Ďalšia akcia 2"
);final
KontextováPoložka
ďalšiaAkcia3 =new
KontextováPoložka
("Ďalšia akcia 3"
);// Pridáme oddeľovač a vnorenú ponuku:
mojaKontextováPonuka.pridajOddeľovač
(); mojaKontextováPonuka.pridajPonuku
("Ďalšie akcie"
, ďalšiaAkcia1, ďalšiaAkcia2,null
, ďalšiaAkcia3);// Definujeme obsluhu udalostí:
new
ObsluhaUdalostí
() {@
Overridepublic
void
klik
() {// Kontextová ponuka sa zobrazí po stlačení pravého tlačidla:
if
(ÚdajeUdalostí
.tlačidloMyši
(PRAVÉ
)) mojaKontextováPonuka.zobraz
(); }@
Overridepublic
void
voľbaKontextovejPoložky
() {// Zistíme, ktorá kontextová položka bolo zvolená:
KontextováPoložka
položka =ÚdajeUdalostí
.kontextováPoložka
();// Na základe voľby vykonáme akciu:
// …
if
(novýObjekt == položka) {Svet
.správa
("Zvolená položka „Nový objekt“."
); }else if
(preusporiadať == položka) {Svet
.správa
("Zvolená položka „Preusporiadať“."
); }else if
(ďalšiaAkcia1 == položka) {Svet
.správa
("Zvolená položka „Ďalšia akcia 1“."
); }else if
(ďalšiaAkcia2 == položka) {Svet
.správa
("Zvolená položka „Ďalšia akcia 2“."
); }else if
(ďalšiaAkcia3 == položka) {Svet
.správa
("Zvolená položka „Ďalšia akcia 3“."
); } } };
JPopupMenu.AccessibleJPopupMenu, JPopupMenu.Separator
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Konštruktor a opis |
---|
KontextováPonuka()
Vytvorí novú kontextovú ponuku (bez titulného popisu, ktorý
nebude možné pridať ani dodatočne).
|
KontextováPonuka(String popis)
Vytvorí kontextovú ponuku s titulným popisom.
|
Modifikátor a typ | Metóda a opis |
---|---|
JMenuItem |
add(String text)
Vytvorí novú položku ponuky so zadaným textom a pripojí ju na
koniec ponuky
|
String |
getLabel()
|
String |
popis()
|
void |
popis(String text)
|
void |
pridajOddelovac()
Alias pre
pridajOddeľovač . |
void |
pridajOddeľovač()
Pridá nový oddeľovač položiek na koniec ponuky.
|
JMenuItem |
pridajPolozku(JMenuItem položka)
Alias pre
pridajPoložku . |
GRobot.KontextováPoložka |
pridajPolozku(String text)
Alias pre
pridajPoložku . |
JMenuItem |
pridajPoložku(JMenuItem položka)
Pripojí na koniec ponuky novú kontextovú položku, ktorej
vytvorenie musí zabezpečiť programátor.
|
GRobot.KontextováPoložka |
pridajPoložku(String text)
Vytvorí novú položku ponuky so zadaným textom a pripojí ju na
koniec ponuky.
|
JMenuItem |
pridajPonuku(String text,
JMenuItem... položky)
Vytvorí novú vnorenú ponuku zo zadaných položiek a pripojí ju na
koniec aktuálnej ponuky.
|
void |
setLabel(String text)
|
static JMenu |
vytvorPonuku(String text,
JMenuItem... položky)
Vytvorí novú ponuku zo zadaných položiek.
|
void |
zobraz()
Zobrazí kontextovú ponuku na poslednej zaznamenanej pozícii myši.
|
void |
zobraz(double x,
double y)
Zobrazí kontextovú ponuku nad plátnom na zadanej pozícii.
|
add, add, addMenuKeyListener, addPopupMenuListener, addSeparator, createActionComponent, createActionChangeListener, firePopupMenuCanceled, firePopupMenuWillBecomeInvisible, firePopupMenuWillBecomeVisible, getAccessibleContext, getComponent, getComponentAtIndex, getComponentIndex, getDefaultLightWeightPopupEnabled, getInvoker, getMargin, getMenuKeyListeners, getPopupMenuListeners, getSelectionModel, getSubElements, getUI, getUITriedaID, insert, insert, isBorderPainted, isLightWeightPopupEnabled, isPopupTrigger, isVisible, menuSelectionChanged, pack, paintBorder, paramString, processFocusEvent, processKeyEvent, processKeyEvent, processMouseEvent, remove, removeMenuKeyListener, removePopupMenuListener, setBorderPainted, setDefaultLightWeightPopupEnabled, setInvoker, setLightWeightPopupEnabled, setLocation, setPopupSize, setPopupSize, setSelected, setSelectionModel, setUI, setVisible, show, 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, getĎalšieFocusableComponent, 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, paintComponent, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printComponent, printChildren, processComponentKeyEvent, processKeyBinding, 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, setĎalšieFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, 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, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMetódyListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMetódy, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMetódyListeners, getInputMetódyRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, checkImage, checkImage, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMetódyEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMetódyListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public KontextováPonuka()
public KontextováPonuka(String popis)
text
nesmie
byť null
a môže byť dodatočne upravovaný metódou
popis(String)
.popis
– text popisu ponuky; nesmie byť null
public JMenuItem pridajPoložku(JMenuItem položka)
položka
– nová kontextová položka (môže byť aj typu
KontextováPoložka
), ktorú treba
pridať na koniec ponukypridajPoložku(String)
,
pridajOddeľovač()
,
pridajPonuku(String, JMenuItem[])
,
vytvorPonuku(String, JMenuItem[])
public JMenuItem pridajPolozku(JMenuItem položka)
pridajPoložku
.public GRobot.KontextováPoložka pridajPoložku(String text)
text
– text novej kontextovej položkypridajPoložku(JMenuItem)
,
pridajOddeľovač()
,
pridajPonuku(String, JMenuItem[])
,
vytvorPonuku(String, JMenuItem[])
public GRobot.KontextováPoložka pridajPolozku(String text)
pridajPoložku
.public void pridajOddeľovač()
public void pridajOddelovac()
pridajOddeľovač
.public JMenuItem pridajPonuku(String text, JMenuItem... položky)
null
, je do ponuky vložený oddeľovač.text
– text položky novej vnorenej ponukypoložky
– zoznam položiekpridajPoložku(JMenuItem)
,
pridajOddeľovač()
,
vytvorPonuku(String, JMenuItem[])
public static JMenu vytvorPonuku(String text, JMenuItem... položky)
null
, je do ponuky vložený oddeľovač.text
– text položky novej vnorenej ponukypoložky
– zoznam položiekpridajPoložku(JMenuItem)
,
pridajOddeľovač()
,
pridajPonuku(String, JMenuItem[])
public void popis(String text)
KontextováPonuka(popis)
. text
nesmie byť null
.
JPopupMenu.setLabel(String)
.text
– text popisu ponuky; nesmie byť null
public String popis()
KontextováPonuka(popis)
.null
ak ponuka nemôže
mať popispublic void zobraz()
public void zobraz(double x, double y)
x
– x-ová súradnica polohy na zobrazenie ponukyy
– y-ová súradnica polohy na zobrazenie ponukypublic JMenuItem add(String text)
add
v triede JPopupMenu
text
– text novej kontextovej položkyJMenuItem
, vrátený objekt je typu KontextováPoložka
, t. j. výsledok môže byť
bez rizika pretypovanýpridajPoložku(String)
public void setLabel(String text)
KontextováPonuka(popis)
. text
nesmie byť null
.
setLabel
v triede JPopupMenu
text
– text popisu ponuky; nesmie byť null
popis(String)
public String getLabel()
KontextováPonuka(popis)
.
getLabel
v triede JPopupMenu
null
ak ponuka nemôže
mať popispopis()