javax.swing

Interface Scrollable

public interface Scrollable

Defines the method that a component should implement to behave nicely in {@link JScrollPane}s. Note that this is not required for a component to be used in a JScrollPane, but can highly improve the user experience when scrolling the component.
Method Summary
DimensiongetPreferredScrollableViewportSize()
intgetScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
Return the preferred scrolling amount (in pixels) for the given scrolling direction and orientation when scrolling in large amounts (pages).
booleangetScrollableTracksViewportHeight()
Return true if the height of the scrollable is always equal to the view, where it is displayed, height.In such case, the vertical scrolling should not be performed.
booleangetScrollableTracksViewportWidth()
Return true if the width of the scrollable is always equal to the view, where it is displayed, width (for instance, the text area with the word wrap).
intgetScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
Return the preferred scrolling amount (in pixels) for the given scrolling direction and orientation when scrolling in small amounts like table lines.

Method Detail

getPreferredScrollableViewportSize

public Dimension getPreferredScrollableViewportSize()

getScrollableBlockIncrement

public int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
Return the preferred scrolling amount (in pixels) for the given scrolling direction and orientation when scrolling in large amounts (pages).

Parameters: visibleRect the currently visible part of the component. orientation the scrolling orientation direction the scrolling direction (negative - up, positive -down). The values greater than one means that more mouse wheel or similar events were generated, and hence it is better to scroll the longer distance.

Returns: the preferred scrolling distance, negative if up or left.

getScrollableTracksViewportHeight

public boolean getScrollableTracksViewportHeight()
Return true if the height of the scrollable is always equal to the view, where it is displayed, height.In such case, the vertical scrolling should not be performed.

Returns: true is no horizontal scrolling is assumed, faster otherwise.

getScrollableTracksViewportWidth

public boolean getScrollableTracksViewportWidth()
Return true if the width of the scrollable is always equal to the view, where it is displayed, width (for instance, the text area with the word wrap). In such case, the horizontal scrolling should not be performed.

Returns: true is no horizontal scrolling is assumed, faster otherwise.

getScrollableUnitIncrement

public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
Return the preferred scrolling amount (in pixels) for the given scrolling direction and orientation when scrolling in small amounts like table lines.

Parameters: visibleRect the currently visible part of the component. orientation the scrolling orientation direction the scrolling direction (negative - up, positive -down). The values greater than one means that more mouse wheel or similar events were generated, and hence it is better to scroll the longer distance.

Returns: the preferred scrolling distance, negative if up or left.