JPaneli tutvustus Java-s

JPanel on kõige lihtsam pakendiklass, mis on osa paketist java.swing. See võib rühmitada või salvestada komponentide komplekti, peamiselt kasutajaliidese loomiseks. See sarnaneb abstraktse akna tööriistakomplekti (AWT) paneelile. JPanel ei sisalda ääriseid, tiitliriba ega menüüriba. Kuigi eksisteerib mitu paigutuse haldurit, on FlowLayout JPaneli vaikimisi paigutuse haldur ja see pärib klassi JComponents. Kui mõni rakendus tuleb rakendusele lisada, annab JPanel ruumi. Mõistagem JPaneli üksikasjalikult järgmistes osades.

JPaneli konstruktorid Java-s

JPaneli saab deklareerida järgmise süntaksi abil:

public class JPanel extends JComponent implements Accessible

JPanel pole konstruktoriteta täielik. Järgnevad on JPanelis kasutatavad erinevad konstruktorid.

  • JPanel (): Kuna FlowLayout on vaikimisi paigutuse haldur, luuakse FlowLayout-iga uus paneel, kui seda konstruktorit kutsutakse.
  • JPanel (LayoutManager lm): luuakse uus JPanel, mille paigutuse haldur on lm.
  • JPanel (Boolean isDoubleBuffered): luuakse uus JPanel koos nimetatud puhverdusstrateegiaga. Väärtus võib nõude põhjal olla tõene või vale.
  • JPanel (LayoutManager lm, Boolean isDoubleBuffered): luuakse uus JPanel määratud paigutuse halduri lm ja puhverdusstrateegiaga.

JPanelis kasutatavad funktsioonid

Mõned JPanelis kasutatavad tavalised funktsioonid on järgmised:

  • getUIClassID (): selle komponendi renderdav (L & F) klassi nimi tagastatakse.
  • add (Component comp): Komponentkomplekt lisatakse määratud konteinerisse.
  • getAccessibleContext (): JPaneliga seotud AccessibleContext tagastatakse.
  • getUI (): objekt, mis selle komponendi renderdab (L & F), tagastatakse.
  • setLayout (LayoutManager lm): konteineri kujundus seatakse määratud paigutuse halduri lm-le.
  • setUI (PanelUI Pui): selle komponendi renderdav objekt (L & F) on seatud.
  • updateUI (): praeguse välimuse ja väärtuse (L & F) väärtus lähtestatakse koos kasutajaliidese atribuudiga.
  • paramString (): JPaneli stringi esitus tagastatakse.

Kuidas Java-paneeli luua?

Nagu juba arutatud, kuulub JPaneli klass paketti java.swing ja alaklassi java.swing.JComponent.

1. JPaneli objekt luuakse nagu allpool mainitud.

JPanel jp=new JPanel(); //jp is the object

2. Looge klass, mis ulatub JPaneli klassist.

public class jpclass extends JPanel()
(
//code to add the components
)

3. Paigutushaldurit võib nõude alusel nimetada või mitte.

Kuna FlowLayout on vaikimisi kasutatav, võime näites kasutada mõnda muud paigutust.

JPanel jp=new JPanel(new BorderLayout);
JPanel jp=new JPanel(new GridBagLayout);

4. Topeltpuhverdusstrateegiat saab rakendada konstrukatori JPanel abil (tõeväärtus on kahekordne)

JPanel jp=new JPanel(true);//double buffering enables
JPanel jp=new JPanel(false); //double buffering disables

Pärast Java-s paneeli loomist määrake JPaneli jaoks paigutuse haldur.

Paigutuse määramiseks kasutage meetodit setLayout (LayoutManager lm).

JPanel jp=new JPanel(new GridBagLayout);

Siin on paigutuseks seatud GridBagLayout. Kui me kasutame süntaksit kui

JPanel jp=new JPanel();

Seejärel seatakse vaikimisi paigutuseks FlowLayout.

Komponentide konteinerisse lisamise samme selgitatakse allpool.

Kuidas Java-s komponente lisada?

Komponentide, näiteks nupu, JLabel, JTextfield jms lisamiseks kasutame meetodit add (). Kuna lisamiseks () on erinevad versioonid, sõltub kasutatav meetod paneeli paigutuse haldurist.

1. Paigutushaldurites, nagu GridLayout, FlowLayout, SpringLayout, BoxLayout, kasutatakse meetodit Add (Component cmp).

JLabel jl = new JLabel("Username: ");
JTextField un= new JTextField(20);
jp.add(jl);
jp.add(un);

jp on JPaneli objekt.

2. Lisamismeetodit (Component cmp, Object obj) kasutatakse paigutushaldurites nagu CardLayout, BorderLayout või GridBagLayout.

JPanel jp = new JPanel(new BorderLayout());
JLabel jl = new JLabel("Username:");
JTextField un = new JTextField(40);
jp.add(label, BorderLayout.NORTH);
jp.add(userName, BorderLayout.WEST);

Kui kasutame GridBagLayout, tuleb teise argumendina edastada GridBagConstraintsobject.

GridBagConstraints cn = new GridBagConstraints();
cn.anchor = GridBagConstraints.WEST;
cn.insets = new Insets(10, 10, 10, 10);
cn.gridx = 0;
cn.gridy = 0;
jp.add(labelUsername, constraints);

Kui kasutame CardLayout, kasutatakse meetodit (String name, Component cmp). Esimene argument on kaardi nimi.

JPanel cl = new JPanel(new CardLayout());
cl.add("A", step1Panel);
cl.add("B", step2Panel);

Programm JPaneli rakendamiseks Java-s

Vaadakem nüüd programmi lihtsa JPaneli rakendamiseks Java-s.

// java Program to create a simple JPanel add components to it
import java.awt.*;
import javax.swing.*;
//A sub class is created b extending JFrame
class JPanelProgram extends JFrame (
// creates a JFrame
static JFrame fr;
// creates JButton
static JButton bt, bt1, bt2;
//creates JLabel that helps in displaying the text
static JLabel lb;
// main class
public static void main(String() args)
(
// A new frame is created to store buttons
fr= new JFrame("Panel");
// Label to display text is created
lb= new JLabel("Panel's Label");
//new buttons are created
bt = new JButton("A Button");
bt1 = new JButton("B Button");
bt2 = new JButton("C Button");
//Panel to add buttons is created
JPanel p = new JPanel();
//Add buttons and text field to panel
p.add(bt);
p.add(bt1);
p.add(bt2);
p.add(lb);
// set the background color of panel
p.setBackground(Color.green);
// add panel to frame
fr.add(p);
// set the size of frame
fr.setSize(400, 300);
fr.show();
)
)

Väljund :

Selles programmis luuakse nuppude ja tekstiväljadega paneel. Paneelile on seatud ka rohelise värvi taust. Värve, suurust ja nuppude arvu saab muuta 0n nõude alusel.

Oletame, et tahame luua BorderLayout'iga komponendi. Ainus erinevus süntaksis on ära toodud allpool.

//Panel to add buttons is created
JPanel jp = new JPanel(new BorderLayout());
//Add buttons and text field to panel
jp.add(bt, BorderLayout.NORTH);
jp.add(bt1, BorderLayout.SOUTH);
jp.add(bt2, BorderLayout.CENTER);

Järgnevalt on toodud ülaltoodud BorderLayouti näidisväljund.

Väljund:

Järeldus - JPanel Java

JPanel on kerge lihtne konteiner, mis rühmitab komplekti komponente. Paigutuse saab konteinerisse lisada vastavalt kasutaja soovile. Kuigi vaikimisi on valitud FlowLayout, kasutatakse ka muid paigutusi, näiteks BorderLayout, GridBagLayout, CardLayout. Selles dokumendis selgitatakse JPaneli erinevaid konstruktoreid ja mitmeid muid funktsioone.

Soovitatavad artiklid

See on Java JPANeli juhend. Siin arutatakse, kuidas paneeli luua ja kuidas javas komponente koos koodi juurutamisega lisada. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. JScrollPane Java
  2. JTextField Java
  3. JDialog Java
  4. JComboBox Java-s
  5. JFrame Java
  6. JLabel Java

Kategooria: