BorderLayout 是 JFrame、JWindow、JDialog、JInternalFrame 等窗口对象的默认布局。BorderLayout 将组件排列在五个区域中。四个边被称为北、南、东、西。中间部分称为中心。每个区域只能包含一个组件,并由相应的常量标识为NORTH,SOUTH,EAST,WEST, 和CENTER。
构造函数:
- BorderLayout():它将构建一个新的边框布局,组件之间没有间隙。
- 边框布局(int,int):它将构建一个具有组件之间指定间隙的边框布局。
常用方法:
- toString():返回一个字符串,表示边框布局的状态。
- getLayoutAlignmentX(容器父级):返回沿 X 轴的布局对齐方式。
- getLayoutAlignmentY(容器父级):它将返回沿 Y 轴的布局对齐方式。
- 移除布局组件(组件组件):该方法用于从borderlayout中移除指定的组件。
- getVgap():返回组件之间的垂直间隙。
- getHgap():返回组件之间的水平间隙。
- setHgap(int hgap):用于设置组件之间的水平间隙。
- setVgap(int vgap):用于设置组件之间的垂直间隙。
下面的程序将说明 BorderLayout 类:
- 程序1:以下程序在 a 中创建 JButton 组件J框架,其实例类是“BorderLayoutDemo”。我们创建5个JButton然后将它们添加到J框架通过使用add()方法。我们将使用以下方法设置框架的大小和可见性setSize()和setVisible()方法分别。布局是通过使用setLayout()方法。
Java
// Java program to illustrate the BorderLayout
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
// class extends JFrame
class BoderLayoutDemo extends JFrame {
BoderLayoutDemo()
{
// Creating Object of Jpanel class
JPanel pa = new JPanel();
// set the layout
pa.setLayout(new BorderLayout());
// add a new JButton with name "wel" and it is
// lie top of the container
pa.add(new JButton("WelCome"), BorderLayout.NORTH);
// add a new JButton with name "come" and it is
// lie button of the container
pa.add(new JButton("Geeks"), BorderLayout.SOUTH);
// add a new JButton with name "Layout" and it is
// lie left of the container
pa.add(new JButton("Layout"), BorderLayout.EAST);
// add a new JButton with name "Border" and it is
// lie right of the container
pa.add(new JButton("Border"), BorderLayout.WEST);
// add a new JButton with name "hello everybody" and it is
// lie center of the container
pa.add(new JButton("GeeksforGeeks"), BorderLayout.CENTER);
// add the pa object which refer to the Jpanel
add(pa);
// Function to close the operation of JFrame.
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Function to set size of JFrame.
setSize(300, 300);
// Function to set visible status of JFrame.
setVisible(true);
}
}
class MainFrame {
// Driver code
public static void main(String[] args)
{
// calling the constructor
new BoderLayoutDemo();
}
}
输出:
- 程序2:该程序将展示如何在 BorderLayout 中传递参数。使用设置背景颜色setBackground()方法。我们创建 5 个 JButton 组件,名为“按钮1“,”按钮2“,”按钮3“,”按钮4“,”按钮5“,然后使用将它们添加到 JFrameadd()方法。我们通过使用设置框架的标题、大小和可见性setTitle(),setSize()和setVisible()分别方法。布局通过方法设置setLayout().
Java
// Java program to illustrate the BorderLayout
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.Frame;
import java.awt.Button;
import java.awt.Color;
// class extends JFrame
public class BorderDemo extends JFrame {
// Constructor of BorderDemo class.
public BorderDemo()
{
// set the layout
setLayout(new BorderLayout());
// set the background
setBackground(Color.red);
// creates Button (btn1)
Button btn1 = new Button("Geeks");
// creates Button (btn2)
Button btn2 = new Button("GFG");
// creates Button (btn3)
Button btn3 = new Button("Sudo Placement");
// creates Button (btn4)
Button btn4 = new Button("GeeksforGeeks");
// creates Button (btn5)
Button btn5 = new Button("Java");
// Adding JButton "btn1" on JFrame.
add(btn1, "North");
// Adding JButton "btn2" on JFrame.
add(btn2, "South");
// Adding JButton "btn3" on JFrame.
add(btn3, "East");
// Adding JButton "btn4" on JFrame.
add(btn4, "West");
// Adding JButton "btn5" on JFrame.
add(btn5, "Center");
// function to set the title
setTitle("Learning a Border Layout");
// Function to set size of JFrame.
setSize(350, 300);
// Function to set visible status of JFrame
setVisible(true);
}
// Main Method
public static void main(String args[])
{
// calling the constructor
new BorderDemo();
}
}
输出:
注意:上述程序可能无法在在线 IDE 中运行。请使用离线编译器。
参考: https://docs.oracle.com/javase/7/docs/api/java/awt/BorderLayout.html
相关用法
- Java AWT BoxLayout用法及代码示例
- Java AWT Dimension用法及代码示例
- Java AWT Choice用法及代码示例
- Java AWT MenuShortcut用法及代码示例
- Java AWT SpringLayout用法及代码示例
- Java AWT Desktop用法及代码示例
- Java AWT GridBagLayout用法及代码示例
- Java AWT CardLayout用法及代码示例
- Java AWT Canvas用法及代码示例
- Java AWT GridLayout用法及代码示例
- Java AWT Color用法及代码示例
- Java ArrayList add()用法及代码示例
- Java ArrayList addAll()用法及代码示例
- Java ArrayList clear()用法及代码示例
- Java ArrayList clone()用法及代码示例
- Java ArrayList contains()用法及代码示例
- Java ArrayList get()用法及代码示例
- Java ArrayList indexOf()用法及代码示例
- Java ArrayList removeAll()用法及代码示例
- Java ArrayList remove()用法及代码示例
- Java ArrayList size()用法及代码示例
- Java ArrayList isEmpty()用法及代码示例
- Java ArrayList subList()用法及代码示例
- Java ArrayList set()用法及代码示例
注:本文由纯净天空筛选整理自Shivi_Aggarwal大神的英文原创作品 Java AWT | BorderLayout Class。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。