Exemple de mise en page Swing imbriquée
Swing est une boîte à outils de développement d'interface Java très populaire, qui fournit une série de gestionnaires de mise en page pour concevoir et construire la disposition des composants dans les interfaces utilisateur graphiques. Cet article présentera un exemple de mise en page imbriquée utilisant le gestionnaire de mise en page Swing.
Dans Swing, vous pouvez utiliser une variété de gestionnaires de mise en page pour obtenir différents effets de mise en page, tels que BorderLayout, FlowLayout, GridLayout, etc. Afin d'implémenter une mise en page imbriquée, nous pouvons utiliser plusieurs gestionnaires de mise en page dans un conteneur pour obtenir une mise en page d'interface complexe. Voici un exemple de code qui montre comment utiliser les gestionnaires de mise en page Swing pour les mises en page imbriquées :
import javax.swing.*; import java.awt.*; public class NestedLayoutExample extends JFrame { public NestedLayoutExample() { // 设置窗口标题 setTitle("嵌套布局示例"); // 创建容器 Container container = getContentPane(); // 创建顶层布局 BorderLayout borderLayout = new BorderLayout(); container.setLayout(borderLayout); // 创建 North 区域的组件 JLabel northLabel = new JLabel("North 区域"); northLabel.setHorizontalAlignment(JLabel.CENTER); container.add(northLabel, BorderLayout.NORTH); // 创建 South 区域的组件 JPanel southPanel = new JPanel(); FlowLayout flowLayout = new FlowLayout(); southPanel.setLayout(flowLayout); JButton southButton1 = new JButton("Button1"); JButton southButton2 = new JButton("Button2"); southPanel.add(southButton1); southPanel.add(southButton2); container.add(southPanel, BorderLayout.SOUTH); // 创建 Center 区域的组件 JPanel centerPanel = new JPanel(); GridLayout gridLayout = new GridLayout(2, 2); centerPanel.setLayout(gridLayout); JButton centerButton1 = new JButton("Button1"); JButton centerButton2 = new JButton("Button2"); JButton centerButton3 = new JButton("Button3"); JButton centerButton4 = new JButton("Button4"); centerPanel.add(centerButton1); centerPanel.add(centerButton2); centerPanel.add(centerButton3); centerPanel.add(centerButton4); container.add(centerPanel, BorderLayout.CENTER); // 设置窗口大小、位置和可见性 setSize(400, 300); setLocationRelativeTo(null); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } public static void main(String[] args) { // 创建 NestedLayoutExample 对象 new NestedLayoutExample(); } }
Dans l'exemple de code ci-dessus, nous utilisons BorderLayout comme gestionnaire de mise en page de niveau supérieur et définissons le conteneur sur la mise en page BorderLayout. Nous ajoutons ensuite une étiquette alignée au centre à la zone Nord et un panneau FlowLayout avec deux boutons à la zone Sud. Enfin, ajoutez un panneau de disposition GridLayout dans la zone Centre, qui contient quatre boutons.
Exécutez le code ci-dessus et vous verrez une fenêtre avec une étiquette en haut de la fenêtre, deux boutons en bas et une grille de boutons 2x2 au milieu.
Résumé :
Dans cet article, nous avons montré comment utiliser le gestionnaire de mise en page de Swing pour les mises en page imbriquées. En utilisant différents gestionnaires de mise en page dans un conteneur, nous pouvons obtenir des mises en page d'interface flexibles et diversifiées. Vous pouvez utiliser différents gestionnaires de mise en page en fonction de vos besoins et concevoir diverses mises en page d'interface complexes en ajustant la taille et la position des composants. J'espère que cet article vous aidera à comprendre l'utilisation imbriquée des mises en page Swing.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!