Bevezetés a JPanelhez a Java-ban

A JPanel a legegyszerűbb, könnyű tartályosztály, amely a java.swing csomag része. Csoportosíthatja vagy tárolhatja az összetevők halmazát, főleg felhasználói felület létrehozása céljából. Ez hasonló az Absztrakt ablak eszközkészlet (AWT) paneljéhez. A JPanel nem tartalmaz szegélyt, címsort vagy menüsort. Annak ellenére, hogy létezik több elrendezéskezelő, a FlowLayout a JPanel alapértelmezett elrendezéskezelője, és a JComponents osztályt örököli. Ha egy komponenst csatolni kell egy alkalmazáshoz, a JPanel helyet biztosít. Megértjük a JPanel részleteit a következő szakaszokban.

A JPanel építői Java-ban

A JPanel a következő szintaxissal deklarálható:

public class JPanel extends JComponent implements Accessible

A JPanel konstruktorok nélkül nem lesz teljes. Az alábbiakban bemutatjuk a JPanelben használt különféle konstruktorokat.

  • JPanel (): Mivel a FlowLayout az alapértelmezett elrendezéskezelő, egy új panel jön létre a FlowLayout használatával, ha ezt a konstruktort hívják.
  • JPanel (LayoutManager lm): Új JPanel jön létre az elrendezéskezelővel mint lm.
  • JPanel (logikai isDoubleBuffered): Új JPanel jön létre az említett pufferelési stratégiával. Az érték lehet igaz vagy hamis a követelmény alapján.
  • JPanel (LayoutManager lm, logikai isDoubleBuffered): Új JPanel jön létre a megadott elrendezéskezelő lm és pufferelési stratégiával.

A JPanelben használt funkciók

A JPanel által használt általános funkciók némelyike ​​a következő:

  • getUIClassID (): Az összetevőt megjelenítő megjelenési és megjelenési osztálynév visszaadásra kerül.
  • add (Component comp): Az Component comp hozzáadódik a megadott tartályhoz.
  • getAccessibleContext (): A JPanelhez kapcsolódó AccessibleContext visszatér.
  • getUI (): Az összetevőt megjelenítő megjelenés és érzés (L & F) objektum visszaadásra kerül.
  • setLayout (LayoutManager lm): A tároló elrendezését a megadott elrendezéskezelő lm-re állítja.
  • setUI (PanelUI Pui): A megjelenés és érzés (L & F) objektum, amely ezt az összetevőt megjeleníti, beállítva.
  • updateUI (): Az aktuális megjelenés és érzés (L & F) értékét visszaállítja a felhasználói felület tulajdonsága.
  • paramString (): A JPanel karakterlánc ábrázolása visszatér.

Hogyan hozhatunk létre panelt Java-ban?

Mint már említettük, a JPanel osztály a java.swing csomag és a java.swing.JComponent alosztálya.

1. A JPanel objektum az alábbiak szerint jön létre.

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

2. Hozzon létre egy osztályt, amely kiterjed a JPanel osztályra.

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

3. Az elrendezéskezelő megemlíthető, vagy nem, a követelmény alapján.

Mivel az alapértelmezett FlowLayout, a példában más elrendezéseket is használhatunk.

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

4. A dupla pufferelési stratégia alkalmazható a JPanel konstruktor segítségével (boolean isdoubleBuffered)

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

Miután létrehozta a Java programot a panelen, állítsa be az elrendezéskezelőt a JPanel számára.

Az elrendezés beállításához használja a setLayout (LayoutManager lm) módszert.

JPanel jp=new JPanel(new GridBagLayout);

Itt egy GridBagLayout van beállítva elrendezésként. Ha a szintaxist mint

JPanel jp=new JPanel();

Ezután az elrendezést alapértelmezés szerint FlowLayout-ra állítja.

Az összetevőknek a tárolóba történő felvételének lépéseit az alábbi szakasz ismerteti.

Hogyan lehet összetevőket hozzáadni a Java-hoz?

Az összetevők, például a gomb, a JLabel, a JTextfield stb. Hozzáadásához az add () metódust fogjuk használni. Mivel az add () -hez különféle verziók vannak, az alkalmazott módszer a panel elrendezés-kezelőjétől függ.

1. Az Add (Component cmp) módszert olyan elrendezés-kezelőkre használják, mint például a GridLayout, FlowLayout, SpringLayout, BoxLayout.

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

A jp a JPanel tárgya.

2. Az Add (Component cmp, Object obj) metódust olyan elrendezéskezelőkhöz kell használni, mint például a CardLayout, BorderLayout vagy 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);

Ha GridBagLayout-t használunk, akkor a GridBagConstraintsobject-et második argumentumként kell átadni.

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

Ha CardLayout-ot használunk, add (String name, Component cmp) módszert használunk. Itt az első érv a Card neve.

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

Program a JPanel végrehajtásához Java-ban

Most nézzük meg az egyszerű JPanel Java alkalmazásba léptetésére szolgáló programot.

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

Teljesítmény :

Ebben a programban egy panel készül gombokkal és szövegmezőkkel. A panelen zöld színű háttér is beállítva. A színek, a méret és a gombok száma megváltoztatható a 0n igény alapján.

Tegyük fel, hogy egy komponenst akarunk létrehozni a BorderLayout segítségével. Az egyetlen különbséget a szintaxisban az alábbiakban említjük.

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

Az alábbiakban bemutatjuk a fenti BorderLayout mintát.

Kimenet:

Következtetés - JPanel Java

A JPanel egy könnyű, egyszerű tárolóedény, amely egyesíti az alkatrészek halmazát. Az elrendezés hozzáadható a tárolóhoz a felhasználó igényei alapján. Annak ellenére, hogy a FlowLayout az alapértelmezett, más elrendezéseket, például BorderLayout, GridBagLayout, CardLayout is használnak. Ebben a dokumentumban ismertetjük a JPanel különféle konstruktorait és számos más tulajdonságát.

Ajánlott cikkek

Ez egy útmutató a JPanelhez Java-ban. Itt tárgyaljuk, hogyan lehet létrehozni egy panelt, és hogyan lehet összetevőket hozzáadni a java-hoz, a kód implementációval együtt. A következő cikkeket is megnézheti további információkért -

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

Kategória: