public class VerticalButtonNavigator extends JPanel
VerticalButtonList API is very similar to javax.swing.JList. It uses the same ListModel as JList does, fires ListSelectionEvent when a button is pressed, etc.
To use it, create a javax.swing.ListModel containing the String names for the buttons that are displayed. Instantiate VerticalButtonNavigator passing it the model. Create and register a ListSelectionListener that will receive ListSelectionEvents when a button is pressed.
Alternatively, the button names can be passed in either as an Object array or a Vector. For example
VerticalButtonNavigator mVBL; String[] btns = { "Btn 1\nSecond Line", "Btn 2", "Btn 3"}; mVBL = new VerticalButtonNavigator(btns); mVBL.setSelectedValue("Btn 2"); mVBL.addListSelectionListener(new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { // handle button selection here System.out.println(e); } });
JPanel.AccessibleJPanel
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
Constructor and Description |
---|
VerticalButtonNavigator()
Create a VerticalButtonNavigator with no elements.
|
VerticalButtonNavigator(ListModel listModel)
Create a VerticalButtonNavigator from a list model.
|
VerticalButtonNavigator(Object[] listData)
Create VerticalButtonNavigator passing in an Object array.
|
VerticalButtonNavigator(Vector listData)
Create VerticalButtonNavigator passing in a Vector.
|
Modifier and Type | Method and Description |
---|---|
void |
addListSelectionListener(ListSelectionListener listener)
Add a ListSelectionListener to this component.
|
protected void |
fireListSelectionListenerValueChanged()
Iterates through ListSelectionListeners and fires ListSelectionEvent.
|
Dimension |
getPreferredSize() |
int |
getSelectedIndex() |
Object |
getSelectedValue()
Returns the selected value.
|
void |
removeListSelectionListener(ListSelectionListener listener)
Remove a previously-added ListSelectionListener from this component.
|
void |
setModel(ListModel model) |
void |
setSelectedIndex(int index)
Select button based on its zero-based index.
|
void |
setSelectedValue(String buttonLabel)
Selects the button with specified value.
|
void |
setValueEnabled(String buttonLabel,
boolean enabled)
Sets the button specified by label to be enabled or disabled
|
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, 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, paintComponent, 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 VerticalButtonNavigator(ListModel listModel)
listModel
- non-null javax.swing.ListModel that contains the
strings that will be used as button labelspublic VerticalButtonNavigator(Object[] listData)
listData
- Array of strings that are used as button labels.public VerticalButtonNavigator(Vector listData)
listData
- Vector of Strings that are used as button labels.public VerticalButtonNavigator()
public Dimension getPreferredSize()
getPreferredSize
in class JComponent
public void setModel(ListModel model)
public void addListSelectionListener(ListSelectionListener listener)
public void removeListSelectionListener(ListSelectionListener listener)
protected void fireListSelectionListenerValueChanged()
public void setValueEnabled(String buttonLabel, boolean enabled)
buttonLabel
- The button label to setenabled
- Whether to enable or disable the buttonpublic void setSelectedValue(String buttonLabel)
buttonLabel
- The label of the button to selectpublic void setSelectedIndex(int index)
index
- Index of button to select. Ensure that index is within
bounds.public int getSelectedIndex()
public Object getSelectedValue()
Copyright © 2003, 2023, Oracle and/or its affiliates.