JScrollPane - простий приклад використання, Java Swing та інша джава

Розмір монітора та вікон обмежений, а розташувати там потрібно дуже багато. Як це зробити розробнику? Тут приходить на допомогу панель прокручування. Весь «великий» контент розміщують усередині панелі, а панель надає скроллбари для прокручування «великого вмісту». У Java Swing такою панеллю є JScrollPane. Саме на JScrollPane розміщується контент, який неможливо вмістити. Крім того, у додатках можуть існувати динамічні компоненти, розмір яких невідомий заздалегідь і може змінюватися з часом. Наприклад, у вікні може бути перелік, кількість записів якого може змінюватися. Для цього список необхідно розмістити на JSсrollPane. Розглянемо простий приклад використання компонента JScrollPane та його налаштування.

Алгоритм роботи з панеллю прокручування дуже простий. Спочатку ми створюємо компонент чи компоненти, які хочемо розташувати на панелі. Якщо компонентів багато, необхідно їх зібрати на панель. Далі створюється JScrollPane, якою конструктор передається той компопнент, який хочемо розмістити на JScrollPane. Після створення панелі прокручування налаштовуємо її належним чином. Нижче розглянемо, які установки можна вказати у JScrollPane. І, нарешті, останній крок - додавання JScrollPane на форму або на якийсь інший контерйнер, де ми припасли місце для прокручування панелі.

Як було сказано вище, один з конструкторів JScrollPane має один параметр – компонент, який необхідно розташувати на панелі прокручування. Думаю конструктор цей найпоширеніший і найчастіше використовуваний. За весь час, який я використовую Java Swing інших я не використовував. JScrollPane, як і інші композиції Swing, дозволяє налаштовувати себе за допомогою різних методів.

JScrollPane дозволяєставити поведінку скроллбарів - смуг прокручування. Робиться це за допомогою методів setHorizontalScrollBarPolicy та setVerticalScrollBarPolicy. Відповідно, перший метод задає поведінку горизонтального скроллбара, другий – вертикального. Даним методам передаються константи, оголошені у класі JScrollPane та визначальні поведінка. Для методу setHorizontalScrollBarPolicy це — HORIZONTAL_SCROLLBAR_ALWAYS (показувати смугу прокручування завжди незалежно від розміру вмісту панелі прокручування), HORIZONTAL_SCROLLBAR_AS_NEEDED (показувати смугу прокручування тільки якщо це необхідно – розмір вмісту більше не показувати смугу прокручування). Для методу setVerticalScrollBarPolicy – ​​це VERTICAL_SCROLLBAR_ALWAYS, VERTICAL_SCROLLBAR_AS_NEEDED та VERTICAL_SCROLLBAR_NEVER. Дія цих констант аналогічна горизонтальним. Приклад використання цих методів можна буде побачити у тестовому додатку.

А тепер за традицією приклад тестового додатку, зовнішній вигляд якого представлений на малюнку нижче.