Pregled JScrollPane u Javi

JScrollPane koristi se za pomicanje pogleda koji se može sastaviti. Kada je veličina zaslona mala ili ograničena, možemo koristiti okno za pomicanje za prikaz velike komponente ili komponente čija se veličina dinamički mijenja. Komponenta bi trebala biti lagana poput slike, tablice, teksta, textarea itd. JScrollPane komponenta treba biti unutar spremnika poput JFrame ili JPanel. Važna je komponenta u grafičkom programiranju, posebno vašu potrebu za rukovanjem i prikazom velike količine podataka. U ovoj ćemo temi naučiti o JScrollPaneu Javi. Kad imamo ograničenu veličinu zaslona, ​​trebamo koristiti okno za slijetanje za sljedeća dva uvjeta:

  1. Za prikaz velike komponente.
  2. Za prikaz komponente koja se mijenja s dinamički veličinom.

JScrollPane klasa je kombinacija okvira za prikaz i traka za pomicanje. Spojit će naš vidljivi prozor sa trakom za pomicanje. Možemo kontrolirati pojave naših pomičnih traka pomoću svojstava pravila zaslona pomične trake: okomita šokalna trakaPolitična i horizontalnaScrollbarPolicy.

Oba ova svojstva mogu imati vrijednosti AS_NEEDED, ALWAYS ili NIKADA. Također ima dva dodatna prikaza:

  1. rowHeading - koristi se za horizontalno kretanje
  2. columnHeading - koristi se za okomito pomicanje

graditelji

Sama svrha konstruktora ove klase je stvaranje okna za pomicanje. Dimenzije podliježu ulaznim vrijednostima tim konstruktorima, odnosno parametrima. Konstruktori klase JscrollPane su dvije vrste Parameterized i Non Parameterized, oni su dalje klasificirani kao dolje:

1. JScrollPane () - Stvara prazno pomično okno (bez pogledaPort). Prema potrebi može imati i vertikalne i horizontalne trake za pomicanje.

Primjer:

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);
)
)

Izlaz:

2. JscrollPane (Component c) - Stvara okno za pomicanje s navedenom komponentom. Kad je sadržaj komponente veći od prikaza, pojavljuje se horizontalna i okomita traka za pomicanje.

Primjer:

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);
)
)

Izlaz:

3. JScrollPane (int vsPolicy, int hsPolicy) - Stvara okno za pomicanje s navedenim pravilima pomicanja.

Primjer:

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);
)
)

Izlaz:

4. JScrollPane (Component c, int vsPolicy, int hsPolicy) - Stvara pomično okno s navedenom komponentom. Položaj komponente se kontrolira s parom pomičnih traka.

Primjer:

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);
)
)

Izlaz:

Metode u klasi JscrollPane

  1. setColumnHeaderView (Komponenta) - Postavlja zaglavlje stupca za pomično područje navedene komponente u parametrima.
  2. setRowHeaderView (Component) - Postavlja zaglavlje reda za pomicanje okna navedene komponente u parametrima.
  3. setCorner (Gudačka tipka, Komponenta) - Postavlja kut za pomicanje za navedenu komponentu u parametru. Parametar ključa stringa sadrži sljedeće:
    JScrollPane.UPPER_LEFT_CORNER, JScrollPane.UPPER_RIGHT_CORNER, JScrollPane.LOWER_LEFT_CORNER, JScrollPane.LOWER_RIGHT_CORNER, JScrollPane.LOWER_LEADING_CORNER, JScrollPane.LOWER_TRAILING_CORNER, JScrollPane.UPPER_LEADING_CORNER, JScrollPane.UPPER_TRAILING_CORNER
  4. getCorner (Component) - Dobiva ugao za pomicanje okna za navedenu komponentu u parametru.

Primjeri JScrollPane u Javi

Evo nekoliko primjera danih u nastavku

1. Primjer programa za JscrollPane

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);
)
)

Izlaz:

2. Primjer JTable-a s JScrollPane

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);
)
)
)

Izlaz:

Zaključak

Kada je veličina zaslona ograničena, trebamo koristiti okno za pomicanje za prikaz velikih komponenti ili komponenti čija se veličina može dinamički mijenjati.

Preporučeni članci

Ovo je vodič za JScrollPane na Javi. Ovdje raspravljamo o konstruktoru, metodama i primjerima JScrollPane u Javi. Možete također pogledati sljedeće članke da biste saznali više -

  1. 2D nizovi na Javi
  2. Nizovi u JavaScript-u
  3. Zvjezdani uzorci na Javi
  4. Dok je petlja u Javi
  5. JPanel na Javi | Kako stvoriti ploču?
  6. Primjeri JFrame u Javi
  7. JLabel u Javi
  8. Protok u Javi
  9. 3 različite vrste nizova u PHP-u (primjeri)
  10. Vodič za program JTable na Javi

Kategorija: