public interface Scrollable
为类似 JScrollPane 的滚动容器提供信息的接口。用于查看 JScrollPane (或其他滚动容器)的视口的复杂组件应实现此接口。
JViewport
,
JScrollPane
,
JScrollBar
方法摘要 | |
---|---|
Dimension |
getPreferredScrollableViewportSize() 返回视图组件视口的首选大小。 |
int |
getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction) 显示逻辑行或列的组件应计算滚动增量,它将根据方向的值完全公开一个行块或列块。 |
boolean |
getScrollableTracksViewportHeight() 如果视口总是强制此 Scrollable 的高度与视口高度匹配,则返回 true。 |
boolean |
getScrollableTracksViewportWidth() 如果视口总是强制此 Scrollable 的宽度与视口宽度匹配,则返回 true。 |
int |
getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction) 显示逻辑行或列的组件应计算滚动增量,它将根据方向的值完全公开一个新的行或列。 |
方法详细信息 |
---|
Dimension getPreferredScrollableViewportSize()
JList
组件的首选大小为容纳其列表中所有单元所需的大小。但是,
preferredScrollableViewportSize
的值为
JList.getVisibleRowCount
行所需的大小。此处不带任何影响视口大小的属性的组件应只返回
getPreferredSize
。
Scrollable
的
JViewport
的首选大小
JComponent.getPreferredSize()
int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
每当用户请求一个单位的滚动时,类似 JScrollPane 的滚动容器将使用此方法。
visibleRect
- 视口内可见的视图区域
orientation
- SwingConstants.VERTICAL 或 SwingConstants.HORIZONTAL。
direction
- 小于 0 为向上/左滚动,大于 0 为向下/右滚动。
JScrollBar.setUnitIncrement(int)
int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
每当用户请求一个块的滚动时,类似 JScrollPane 的滚动容器将使用此方法。
visibleRect
- 视口内可见的视图区域
orientation
- SwingConstants.VERTICAL 或 SwingConstants.HORIZONTAL。
direction
- 小于 0 为向上/左滚动,大于 0 为向下/右滚动。
JScrollBar.setBlockIncrement(int)
boolean getScrollableTracksViewportWidth()
Scrollable
的宽度与视口宽度匹配,则返回 true。例如,支持换行的正常文本显示在这里将返回 true,因为不希望让换行内容超出视口右边界而无法显示。注意,祖先为 JScrollPane 的 Scrollable 返回 true 可有效地禁用水平滚动。
类似 JViewport 的滚动容器在每次进行验证时都使用此方法。
boolean getScrollableTracksViewportHeight()
类似 JViewport 的滚动容器在每次进行验证时都使用此方法。