JScrollPane ülevaade Java-s

JScrollPane kasutatakse teie komponendile keritava vaate kuvamiseks. Kui ekraani suurus on väike või piiratud, saame kerimispaneeli abil näidata suurt komponenti või komponenti, mille suurus muutub dünaamiliselt. Komponent peaks olema kerge, näiteks pilt, tabel, tekst, tekstiala jne. JScrollPane komponent peaks olema konteineri sees nagu JFrame või JPanel. See on oluline osa graafilises programmeerimises, eriti teie vajadus käsitleda ja kuvada suurt hulka andmeid. Selles teemas tutvume JScrollPane Javaga. Kui ekraani suurus on piiratud, peame kasutama kerimispaanit kahel järgmisel juhul:

  1. Suure komponendi kuvamiseks.
  2. Dünaamiliselt muudetava komponendi kuvamiseks.

JScrollPane klass on vaateavade ja kerimisribade kombinatsioon. See ühendab meie vaateakna kerimisribaga. Kerimisribade esinemist saame juhtida kerimisriba kuvamise poliitika atribuutide abil: verticalScrollbarPolicy ja horizontalScrollbarPolicy.

Mõlemal neil omadustel võivad olla väärtused AS_NEEDED, ALWAYS või NEVER. Sellel on ka kaks täiendavat vaateporti:

  1. rowHeading - kasutatakse horisontaalselt kerimiseks
  2. columnHeading - kasutatakse vertikaalseks kerimiseks

Konstruktorid

Selle klassi konstruktori ainus eesmärk on kerimispaneeli loomine. Nende konstruktorite sisendväärtused, st parameetrid, kahjustavad selle mõõtmeid. JscrollPane klassi konstruktorid on kahte tüüpi parameetrilised ja mitteparameetrilised, neid liigitatakse järgmiselt:

1. JScrollPane () - loob tühja kerimispaneeli (viewPort puudub). Sellel võib vajadusel olla nii vertikaalset kui ka horisontaalset kerimisriba.

Näide:

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

Väljund:

2. JscrollPane (komponent c) - loob määratud komponendiga kerimispaneeli . Kui komponendi sisu on suurem kui vaade, ilmub horisontaalne ja vertikaalne kerimisriba.

Näide:

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

Väljund:

3. JScrollPane (int vsPolicy, int hsPolicy) - loob kerimispaanidega määratud kerimisreeglitega.

Näide:

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

Väljund:

4. JScrollPane (komponent c, int vsPolicy, int hsPolicy) - loob määratud komponendiga kerimispaneeli . Komponendi positsiooni juhitakse kerimisribade abil.

Näide:

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

Väljund:

Meetodid JscrollPane klassis

  1. setColumnHeaderView (komponent) - see määrab parameetrites määratud komponendi kerimispaanil veeru päise.
  2. setRowHeaderView (komponent) - see määrab parameetrites määratud komponendi kerimispaanile rea päise.
  3. setCorner (String-klahv, komponent) - see määrab parameetris määratud komponendi kerimisnurga. Stringklahvi parameeter on järgmine:
    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 (komponent) - see saab parameetris määratud komponendi kerimispaanil nurga.

JScrollPane näited Java-s

Siin on mõned allpool toodud näited

1. JscrollPane'i näidisprogramm

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

Väljund:

2. JTable'i näide JScrollPane'iga

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

Väljund:

Järeldus

Kui ekraani suurus on piiratud, peame suurte komponentide või komponentide kuvamiseks, mille suurus võib dünaamiliselt muutuda, kuvama kerimispaneeli.

Soovitatavad artiklid

See on JavaScripti JScrollPane juhend. Siin käsitleme JScrollPane'i ehitajat, meetodeid ja näiteid Java-s. Võite lisateabe saamiseks vaadata ka järgmisi artikleid -

  1. 2D-massiivid Java-s
  2. Massiivid JavaScriptis
  3. Tähemustrid Java-s
  4. Kuigi Loop Java
  5. JPanel Java | Kuidas paneeli luua?
  6. JFrame'i näited Java-s
  7. JLabel Java
  8. Väljavool Java-s
  9. 3 erinevat tüüpi massiive PHP-s (näited)
  10. JTable'i Java programmi programmijuhend

Kategooria: