The JScrollPane Class
We used JScrollPane
earlier in this chapter without
explaining much about it. In this section we’ll remedy the
situation.
A JScrollPane is a container that can hold one
component. Said another way, a JScrollPane
wraps another component. By default, if the
wrapped component is larger than the JScrollPane
itself, the JScrollPane supplies scrollbars.
JScrollPane handles the events from the scrollbars
and displays the appropriate portion of the contained component.
Technically, JScrollPane is a
Container, but it’s a funny one. It has its
own layout manager, which can’t be changed. It can accommodate
only one component at a time. This seems like a big limitation, but
it isn’t. If you want to put a lot of stuff in a
JScrollPane, just put your components into a
JPanel, with whatever layout manager you like, and
put that panel into the JScrollPane.
When you create a JScrollPane, you can
specify the conditions under which
its scrollbars will be displayed. This is called the
scrollbar display
policy
; a separate policy is used for the
horizontal and vertical scrollbars. The
following constants can be used to specify the policy for each of the
scrollbars:
-
HORIZONTAL_SCROLLBAR_AS_NEEDED Displays a scrollbar only if the wrapped component doesn’t fit.
-
HORIZONTAL_SCROLLBAR_ALWAYS Always shows a scrollbar, regardless of the contained component’s size.
-
HORIZONTAL_SCROLLBAR_NEVER Never shows a scrollbar, even if the contained component won’t fit. If you use this policy, you ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access