Преглед ЈСцроллПане у Јави

ЈСцроллПане се користи да бисте добили компоненту која се може помицати. Када је величина екрана мала или ограничена, можемо користити окно за помицање да бисмо приказали велику компоненту или компоненту чија се величина динамички мења. Компонента би требала бити лагана попут слике, табеле, текста, тектареа итд. ЈСцроллПане компонента треба бити унутар контејнера попут ЈФраме или ЈПанел. Важна је компонента у графичком програмирању, посебно ваша потреба за руковањем и приказивањем велике количине података. У овој теми ћемо сазнати о ЈСцроллПане на Јави. Када имамо ограничену величину екрана, тада морамо да користимо окна за следећа два услова:

  1. За приказ велике компоненте.
  2. Да бисте приказали компоненту која се може променити у величини.

ЈСцроллПане класа је комбинација прегледа и трака за помицање. Он ће повезати наш видни прозор са траком за помицање. Можемо контролисати појаве наших трака за помицање користећи својства правила за кретање:

Оба ова својства могу имати вриједности АС_НЕЕДЕД, АЛВАИС или НИКАДА. Такође има два додатна приказа:

  1. ровХеадинг - Користи се за хоризонтално кретање
  2. цолумнХеадинг - Користи се за вертикално померање

Конструктори

Сама сврха конструктора ове класе је креирање окна. Димензије исте поткопавају се улазним вредностима тих конструктора, односно параметрима. Конструктори класе ЈсцроллПане су две врсте Параметеризед и Нон Параметеризед, они су даље класификовани као испод:

1. ЈСцроллПане () - Ствара празно окно за скроловање (нема виевПорт). По потреби може имати и вертикалне и хоризонталне траке за помицање.

Пример:

import java.awt.*;
import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class Jscrollpane (
public static void main(String() args) (
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
JScrollPane scrollPane = new JScrollPane();
panel.add(scrollPane);
frame.setContentPane(panel);
frame.setSize(500, 500);
frame.setLocationByPlatform(true);
frame.setVisible(true);
)
)

Излаз:

2. ЈсцроллПане (Компонента ц) - Ствара окно за помицање са наведеном компонентом. Када је садржај компоненте већи од приказа, појављује се хоризонтална и вертикална трака за помицање.

Пример:

import java.awt.*;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class Jscrollpane (
public static void main(String() args) (
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
JTextArea tArea = new JTextArea(10, 10);
JScrollPane scrollPane = new JScrollPane(tArea);
panel.add(scrollPane);
frame.setContentPane(panel);
frame.setSize(500, 500);
frame.setLocationByPlatform(true);
frame.setVisible(true);
)
)

Излаз:

3. ЈСцроллПане (инт всПолици, инт хсПолици) - Ствара окно за претрагу са одређеним смерницама за скроловање.

Пример:

import java.awt.*;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class Jscrollpane (
public static void main(String() args) (
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
JScrollPane scrollPane = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
panel.add(scrollPane);
frame.setContentPane(panel);
frame.setSize(500, 500);
frame.setLocationByPlatform(true);
frame.setVisible(true);
)
)

Излаз:

4. ЈСцроллПане (Цомпонент ц, инт всПолици, инт хсПолици) - Ствара окно за помицање са наведеном компонентом. Положај компоненте се контролише помоћу пара клизача.

Пример:

import java.awt.*;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class Jscrollpane (
public static void main(String() args) (
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
JTextArea tArea = new JTextArea(10, 10);
JScrollPane scrollPane = new JScrollPane(tArea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
panel.add(scrollPane);
frame.setContentPane(panel);
frame.setSize(500, 500);
frame.setLocationByPlatform(true);
frame.setVisible(true);
)
)

Излаз:

Методе у класи ЈсцроллПане

  1. сетЦолумнХеадерВиев (Цомпонент) - Поставља заглавље ступца за окно за помицање наведене компоненте у параметрима.
  2. сетРовХеадерВиев (Цомпонент) - Поставља заглавље реда за помицање оквира наведене компоненте у параметрима.
  3. сетЦорнер (Стринг тастер, Компонента) - Поставља угао за помицање за наведену компоненту у параметру. Параметар стринг-кључа заједно са следећим:
    ЈСцроллПане.УППЕР_ЛЕФТ_ЦОРНЕР, ЈСцроллПане.УППЕР_РИГХТ_ЦОРНЕР, ЈСцроллПане.ЛОВЕР_ЛЕФТ_ЦОРНЕР, ЈСцроллПане.ЛОВЕР_РИГХТ_ЦОРНЕР, ЈСцроллПане.ЛОВЕР_ЛЕАДИНГ_ЦОРНЕР, ЈСцроллПане.ЛОВЕР_ТРАИЛИНГ_ЦОРНЕР, ЈСцроллПане.УППЕР_ЛЕАДИНГ_ЦОРНЕР, ЈСцроллПане.УППЕР_ТРАИЛИНГ_ЦОРНЕР
  4. гетЦорнер (Цомпонент) - Добија угао за помицање за наведену компоненту у параметру.

Примери ЈСцроллПане у Јави

Ево неколико примера који су наведени у даљем тексту

1. Пример програма за ЈсцроллПане

import java.awt.*;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class Jscrollpane (
public static void main(String() args) (
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
JTextArea tArea = new JTextArea(20, 20);
JLabel labelColumn = new JLabel("Column Header");
JLabel labelRow = new JLabel("Row Header");
JLabel label1 = new JLabel("UL");
JLabel label2 = new JLabel("UR");
JLabel label3 = new JLabel("LL");
JLabel label4 = new JLabel("LR");
JScrollPane scrollPane = new JScrollPane(tArea);
scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
scrollPane.setColumnHeaderView(labelColumn);
scrollPane.setRowHeaderView(labelRow);
scrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, label1);
scrollPane.setCorner(JScrollPane.UPPER_RIGHT_CORNER, label2);
scrollPane.setCorner(JScrollPane.LOWER_LEFT_CORNER, label3);
scrollPane.setCorner(JScrollPane.LOWER_RIGHT_CORNER, label4);
panel.add(scrollPane);
frame.setContentPane(panel);
frame.setSize(500, 500);
frame.setLocationByPlatform(true);
frame.setVisible(true);
)
)

Излаз:

2. Пример ЈТабле-а са ЈСцроллПане

import javax.swing.*;
import java.awt.*;
import javax.swing.table.TableModel;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.DefaultTableCellRenderer;
public class JScrollDemo (
public static void main(String() args) (
(
String() index = new String() ( "S.No", "Continent", "Area (square.km)",
"Percentage Total Mass" );
JFrame frame = new JFrame("JScrollPane with JTable");
JLabel label = new JLabel("Continents Largest To Smallest", JLabel.CENTER);
Object()() data = new Object()() (
( "S.No", "Continent", "Area (square.km)", "Percentage Total Mass" )
( "1", "Asia", "44, 579, 000", "29.5%" ),
( "2", "Africa", "30, 370, 000", "20.4%" ),
( "3", "North America", "24, 709, 000", "16.5%" ),
( "4", "South America", "17, 840, 000", "12.0%" ),
( "5", "Antartica", "14, 000, 000", "9.2%" ),
( "6", "Europe", "10, 180, 000", "6.8%" ),
( "7", "Australia", "8, 600, 000", "5.9%" ), );
// creating a DeFaultTableModel object, which is subclass of
// TableModel
DefaultTableModel TableModel = new DefaultTableModel(data, index);
// Initializing a JTable from DefaultTableModel.
JTable table = new JTable(TableModel);
// Adjusting the contents of each cell of JTable in CENTER
DefaultTableCellRenderer tableCellRenderer = new DefaultTableCellRenderer();
// Aligning the table data centrally.
tableCellRenderer.setHorizontalAlignment(JLabel.CENTER);
table.setDefaultRenderer(Object.class, tableCellRenderer);
// Creating a JPanel, setting it layout to BorderLayout and adding
// JTable to it.
JPanel panel = new JPanel(new BorderLayout());
panel.add(table, BorderLayout.CENTER);
// Creating a JScrollPane and adding its functionalities to JPanel
JScrollPane scrollPane = new JScrollPane(panel);
// Adding a JLabel and JScrollPane to JFrame.
frame.add(label, BorderLayout.NORTH);
frame.add(scrollPane, BorderLayout.CENTER);
frame.setSize(320, 200);
frame.setVisible(true);
)
)
)

Излаз:

Закључак

Када је величина екрана ограничена, морамо користити окно за помицање да бисмо приказали велике компоненте или компоненте чија се величина може динамички мењати.

Препоручени чланци

Ово је водич за ЈСцроллПане на Јави. Овде смо расправљали о конструктору, методама и примерима ЈСцроллПане у Јави. Можда ћете такође погледати следеће чланке да бисте сазнали више -

  1. 2Д низови на Јави
  2. Низи у ЈаваСцрипт-у
  3. Стар Паттернс на Јави
  4. Док је петља у Јави
  5. ЈПанел на Јави | Како креирати панел?
  6. Примери ЈФраме-а на Јави
  7. ЈЛабел на Јави
  8. Фловлаиоут у Јави
  9. 3 различите врсте поља у ПХП-у (примери)
  10. Водич за програм ЈТабле на Јави

Категорија: