Pregled JScrollPane v Javi

JScrollPane se uporablja za prikaz pogleda, ki ga je mogoče premikati. Ko je velikost zaslona majhna ali omejena, lahko s pomočjo podokna za pomikanje prikažemo veliko komponento ali komponento, katere velikost se dinamično spreminja. Komponenta mora biti lahka, kot so slika, tabela, besedilo, besedilo, itd. Komponenta JScrollPane mora biti znotraj vsebnika, kot sta JFrame ali JPanel. Je pomemben sestavni del grafičnega programiranja, zlasti vaša potreba po obdelavi in ​​prikazu velike količine podatkov. V tej temi bomo spoznali JScrollPane na Javi. Ko imamo omejeno velikost zaslona, ​​moramo uporabiti podokno za pomikanje za naslednja dva pogoja:

  1. Za prikaz velike komponente.
  2. Za prikaz komponente, ki se spreminja z dinamično velikostjo.

Razred JScrollPane je kombinacija ogledih in drsnih trakov. Naše vidno polje bo povezano z drsno vrstico. Svoje premike lahko nadziramo z lastnostmi politike prikaza drsne vrstice: navpičnoScrollbarPolicy in horizontalScrollbarPolicy.

Obe lastnosti lahko imata vrednosti AS_NEEDED, ALWAYS ali NIKOLI. Ima tudi dve dodatni razgledi:

  1. rowHeading - Uporablja se za vodoravno drsenje
  2. columnHeading - Uporablja se za navpično drsenje

Konstruktorji

Edini namen konstruktorja tega razreda je ustvariti podokno za pomikanje. Dimenzije so spodkopane z vhodnimi vrednostmi teh konstruktorjev, tj. Parametri. Konstruktorji razreda JscrollPane so dve vrsti Parameterized in Non Parameterized, nadalje so razvrščeni kot spodaj:

1. JScrollPane () - ustvari prazno podokno za pomikanje (brez pogledaPort). Po potrebi lahko ima navpične in vodoravne drsne trake.

Primer:

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

Izhod:

2. JscrollPane (komponenta c) - ustvari podokno za pomikanje z določeno komponento. Ko je vsebina komponente večja od pogleda, se prikaže horizontalna in navpična drsna vrstica.

Primer:

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

Izhod:

3. JScrollPane (int vsPolicy, int hsPolicy) - ustvari podokno za pomikanje z določenimi smernicami drsenja.

Primer:

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

Izhod:

4. JScrollPane (Component c, int vsPolicy, int hsPolicy) - ustvari podokno za pomikanje s podano komponento. Položaj komponente uravnavamo s parom drsnih trakov.

Primer:

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

Izhod:

Metode v razredu JscrollPane

  1. setColumnHeaderView (Component) - nastavi glavo stolpca za podokno drsanja določene komponente v parametrih.
  2. setRowHeaderView (Component) - nastavi glavo vrstice za podokno drsanja določene komponente v parametrih.
  3. setCorner (nizalna tipka, komponenta) - postavi vogal podokna za pomikanje za določeno komponento v parametru. Parameter ključa niz je skupaj z naslednjim:
    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) - Dobi vogal za podokno za pomikanje za določeno komponento v parametru.

Primeri JScrollPane v Javi

Tu je nekaj primerov, podanih spodaj

1. Primer 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);
)
)

Izhod:

2. Primer JTable z 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);
)
)
)

Izhod:

Zaključek

Ko je velikost zaslona omejena, moramo uporabiti drsno podokno za prikaz velikih komponent ali komponent, katerih velikost se lahko dinamično spreminja.

Priporočeni članki

To je vodnik za JScrollPane na Javi. Tukaj razpravljamo o konstruktorju, metodah in primerih JScrollPane na Javi. Za več informacij si lahko ogledate tudi naslednje članke -

  1. 2D matriki na Javi
  2. Nizi v JavaScript
  3. Zvezdni vzorci na Javi
  4. Medtem ko je zanka v Javi
  5. JPanel v Javi | Kako ustvariti ploščo?
  6. Primeri JFrame v Javi
  7. JLabel v Javi
  8. Pretok v Javi
  9. 3 različne vrste nizov v PHP (primeri)
  10. Vodnik po programu JTable v Javi