Class DataViewPanel
- All Implemented Interfaces:
DataViewListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
public class DataViewPanel extends javax.swing.JPanel implements DataViewListener
Model
übergibt, in einem ScrollPane dar. Mit dem Konstruktor wird ein baumartiger
Header erstellt, dessen Spaltenbreiten durch Schieberegler verändert werden kann. Damit dies funktioniert, muss nachdem der Header erzeugt und
dieser angezeigt (z.B. durch validate() oder durch Frame.setVisible()) wird mit der Methode initHeaderSize()
initialisiert werden.- See Also:
- Serialized Form
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
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
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
Constructors Constructor Description DataViewPanel(DataViewModel model)
Konstruktor. -
Method Summary
Modifier and Type Method Description void
addDataTableObject(int index, DataTableObject dataTableObject)
Fügt einen Datensatz an eine bestimmte Position der bisherigen Datensätze ein.void
addDataTableObjects(java.util.List<DataTableObject> dataTableObjects)
Fügt eine beliebige Anzahl neuer Datensätze an die bestehenden Datensätze hinten an.boolean
getFirstRun()
Hoffentlich bald überflüssig.HeaderGrid
getHeaderGrid()
Gibt den Spaltenheader zurück.SelectionManager
getSelectionManager()
Gibt den SelectionManager zurück.int
getVerticalScrollBarsMaximumValue()
Gibt den Maximalwert des vertikalen Rollbalkens zurück.int
getVerticalScrollBarsVisibleAmount()
Gibt den Ausdehung des Knopfes der vertikalen Rollbalkens zurück.int
getVisibleViewPortHeight()
Gibt die Höhe des sichtbaren Bereich des Viewports zurück.void
increaseLowerPanel(int height)
Vergrößert den unteren Platzhalter um die angebene Höhevoid
initHeaderSize()
Die Größe des Headers wird initial gesetzt.boolean
isHorizontalScrollBarVisible()
Gibttrue
zurück, wenn der horizontale Rolbalken sichtbar ist.void
removeDataTableObject(int index)
Löscht einen Datensatz an angegebener Position.void
setDataTableObjects(java.util.List<DataTableObject> dataTableObjects)
Alle bisherigen Datensätze werden gelöscht und die neuen werden übernommen.void
setFirstRun(boolean firstRun)
Kann auf false gesetzt werden, falls die Größen des Spaltenheaders initialisiert worden sind.void
setHorizontalScrollBarPolicy(int horizontalPolicy)
Setzt den Modus des horizontalen Rollbalkens.void
setVerticalScrollBarsMaximumValue(int value)
Setzt den maximalen Wert des vertikalen Rollbalkens.void
setVerticalScrollBarValue(int value)
Setzt den Wert des vertikalen Rollbalkens.java.lang.String
toString()
void
update(int index, DataTableObject dataTableObject)
Aktualisiert an angegebener Position den Datensatz.Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
Methods inherited from class javax.swing.JComponent
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, 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
Methods inherited from class java.awt.Container
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
Methods inherited from class java.awt.Component
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, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Constructor Details
-
DataViewPanel
Konstruktor. Benötigt eine Instanz desDataViewModel
. Das Model gibt Benachrichtigungen, falls sich an den anzuzeigenden Daten etwas ändert.- Parameters:
model
- das DataViewModel
-
-
Method Details
-
getSelectionManager
Gibt den SelectionManager zurück.- Returns:
- den SelectionManager
-
getHeaderGrid
Gibt den Spaltenheader zurück.- Returns:
- den Spaltenheader
-
initHeaderSize
public void initHeaderSize()Die Größe des Headers wird initial gesetzt. Dies ist notwendig, damit die Headergröße durch die Maus verändert werden kann. Diese Methode muss nach dem Anzeigen der Tabelle, allerdings bevor die ersten Daten kommen, aufgerufen werden.- See Also:
setHeaderSizes(HeaderGrid, int)
-
getFirstRun
public boolean getFirstRun()Hoffentlich bald überflüssig. Spätestens, wenn die MethodeinitHeaderSize()
von der Applikation aufgerufen wird.- Returns:
- gibt
true
oderfalse
zurück
-
setFirstRun
public void setFirstRun(boolean firstRun)Kann auf false gesetzt werden, falls die Größen des Spaltenheaders initialisiert worden sind.- Parameters:
firstRun
-true
ist Default-Einstellung
-
addDataTableObjects
Fügt eine beliebige Anzahl neuer Datensätze an die bestehenden Datensätze hinten an.Achtung: es ist nicht geklärt, ob diese Methode auch dafür sorgt, dass die Zeilen der Datensätze sichtbar werden, falls sie im sichtbaren Bereich sind, oder ob dazu noch der AdjustmentListener getriggert werden muss. S. addDataTableObject(..).
- Specified by:
addDataTableObjects
in interfaceDataViewListener
- Parameters:
dataTableObjects
- Liste neuer Datensätze
-
addDataTableObject
Fügt einen Datensatz an eine bestimmte Position der bisherigen Datensätze ein. Befindet sich die Position innerhalb der gerade dargestellten Datensätze, dann wird die Darstellung neu erzeugt und angezeigt.DIESER KOMMENTAR IST FALSCH: Tatsächlich wird nur die erste Zeile ins Panel eingefügt, alle anderen kommen erst durch den AdjustmentListener hinzu. Da ein AdjustmentEvent künstlich nur recht komisch auszulösen ist, hätte man das besser so wie beschrieben implementiert. TN, nach langer Fehlersuche.
- Specified by:
addDataTableObject
in interfaceDataViewListener
- Parameters:
index
- Position des neuen DatensatzesdataTableObject
- der neue Datensatz
-
setDataTableObjects
Alle bisherigen Datensätze werden gelöscht und die neuen werden übernommen. Die ersten Datensätze, die angezeigt werden können, werden dargestellt.Für diese Methode ist nicht klar, ob sie von den Problemen der Methode addDataTableObject betroffen ist.
- Specified by:
setDataTableObjects
in interfaceDataViewListener
- Parameters:
dataTableObjects
- Liste neuer Datensätze
-
removeDataTableObject
public void removeDataTableObject(int index)Löscht einen Datensatz an angegebener Position.- Specified by:
removeDataTableObject
in interfaceDataViewListener
- Parameters:
index
- Position des zu löschenden Datensatzes
-
update
Aktualisiert an angegebener Position den Datensatz.Von dieser Methode ist nicht bekannt, ob sie von den Problemen der Methode addDataTableObject betroffen ist.
- Specified by:
update
in interfaceDataViewListener
- Parameters:
index
- Position des zu aktualisierenden DatensatzesdataTableObject
- aktueller Datensatz
-
increaseLowerPanel
public void increaseLowerPanel(int height)Vergrößert den unteren Platzhalter um die angebene Höhe- Parameters:
height
- die zu addierende Höhe für den Platzhalter
-
setVerticalScrollBarValue
public void setVerticalScrollBarValue(int value)Setzt den Wert des vertikalen Rollbalkens.- Parameters:
value
- der neue Wert
-
getVerticalScrollBarsMaximumValue
public int getVerticalScrollBarsMaximumValue()Gibt den Maximalwert des vertikalen Rollbalkens zurück.- Returns:
- gibt den Maximalwert des vertikalen Rollbalkens zurück
-
setVerticalScrollBarsMaximumValue
public void setVerticalScrollBarsMaximumValue(int value)Setzt den maximalen Wert des vertikalen Rollbalkens.- Parameters:
value
- der neue Wert
-
getVerticalScrollBarsVisibleAmount
public int getVerticalScrollBarsVisibleAmount()Gibt den Ausdehung des Knopfes der vertikalen Rollbalkens zurück.- Returns:
- gibt den Ausdehung des Knopfes der vertikalen Rollbalkens zurück
-
getVisibleViewPortHeight
public int getVisibleViewPortHeight()Gibt die Höhe des sichtbaren Bereich des Viewports zurück.- Returns:
- gibt die Höhe des sichtbaren Bereich des Viewports zurück
-
isHorizontalScrollBarVisible
public boolean isHorizontalScrollBarVisible()Gibttrue
zurück, wenn der horizontale Rolbalken sichtbar ist.- Returns:
- gibt
true
zurück, wenn der horizontale Rolbalken sichtbar ist
-
setHorizontalScrollBarPolicy
public void setHorizontalScrollBarPolicy(int horizontalPolicy)Setzt den Modus des horizontalen Rollbalkens.- Parameters:
horizontalPolicy
- der neue Modus
-
toString
public java.lang.String toString()- Overrides:
toString
in classjava.awt.Component
-