Használata JPanel panel konténer, java swing és más Java

Amikor az épület a felületek szükséges-konterynery elemei tartalmazhatnak egyéb alkatrészek a felhasználói felület. Swing Az egyik ilyen komponens tartályok JPanel. Alapértelmezésben JPanel önmagában nem festék semmit, kivéve a háttérben. Amikor dolgozik konténerek, a fejlesztő meg kell oldani, mint általában, két fő problémát. Az első - állítsa be a helyét, és a második kiegészítő komponensek - elvégzésére a komponensek hozzáadásával, hogy a tartály.

Tekintsük az első probléma - a feladat leányvállalatai alkatrészeket. A Swing van Elrendezés Manager'ov mechanizmus megadása elrendezését leányvállalata szerkezet a tartályra. Továbbá Layout Manager meghatározza, hogyan fog reagálni a változások a komponenseit a méret a szülő konténer. Layout Manager kap a tartály keresztül setLayout módszerrel. A második probléma - alkatrész hozzá. Ezenkívül az alkatrész módszerrel végezzük add. Mivel a paraméterek, ez a módszer továbbított komponens hozzáadandó, valamint egyéb tárgyakat felelősek hely komponenst. Tekintsük a példát panel, amely a Layout Manager használ Border Layout.

Használata JPanel panel konténer, java swing és más Java

A forráskód az alábbiakban mutatjuk be.

import java.awt.BorderLayout;
import java.awt.Dimension;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Test

public static void createGUI () JFrame.setDefaultLookAndFeelDecorated (true);
JFrame frame = new JFrame ( «Test frame»);
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);

JPanel panel = új JPanel ();
panel.setLayout (új BorderLayout ());

JButton northButton = new JButton ( «Észak»);
panel.add (northButton, BorderLayout.NORTH);

JButton southButton = new JButton ( «Dél»);
panel.add (southButton, BorderLayout.SOUTH);

JButton eastButton = new JButton ( «keleti»);
panel.add (eastButton, BorderLayout.EAST);

JButton westButton = new JButton ( «Nyugat»);
panel.add (westButton, BorderLayout.WEST);

JButton centerButton = new JButton ( «Center»);
panel.add (centerButton, BorderLayout.CENTER);

. Frame.getContentPane () hozzá (panel);
frame.setPreferredSize (új dimenzió (500, 400));

frame.pack ();
frame.setVisible (true);
frame.setLocationRelativeTo (null);
>

public static void main (String [] args) javax.swing.SwingUtilities.invokeLater (új futtatható () public void run () createGUI ();
>
>);
>
>