Java BorderLayout是Java Swing中的一个布局管理器,用于在容器中放置组件。它将容器分为5个区域:北、南、东、西和中。每个区域可以放置一个组件,如果没有组件,则该区域将保持为空。
Java BorderLayout的特点和应用场景如下:
推荐的腾讯云相关产品和产品介绍链接地址如下:
请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求和情况进行。
简介 BorderLayout,边界布局管理器。它把 Container 按方位分为 5 个区域(东、西、南、北、中),每个区域放置一个组件。...构造方法: 构造一个组件之间没有间距的新边框布局 BorderLayout() 构造一个具有指定组件间距的边框布局 BorderLayout(int hgap, int vgap) 方位常量 BorderLayout.NORTH...// 容器的北边 BorderLayout.SOUTH // 容器的南边 BorderLayout.WEST // 容器的西边 BorderLayout.EAST...// 容器的东边 BorderLayout.CENTER // 容器的中心
Java开发GUI之BorderLayout边界布局 前面博客中所提及的例子都是针对单独的视图组件,将组件组合并布局在合适的位置才能算是完整的界面。...Java中的布局采用布局管理器模式进行,提供了跨平台性,BoaderLayout布局管理器会将其内容分成5个部分,上下左右和中心,示例代码如下: static void BorderLayoutTest...(){ Frame frame = new Frame("Label"); BorderLayout layout = new BorderLayout(10,15); Panel pannel...= new Panel(layout); pannel.add(BorderLayout.NORTH, new Button("北方")); pannel.add(BorderLayout.SOUTH..., new Button("南方")); pannel.add(BorderLayout.EAST, new Button("东方")); pannel.add(BorderLayout.WEST
import java.awt.BorderLayout; import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout...JPanel();//放置下拉列表 JPanel northPanel2 = new JPanel();//放置检索分类 JPanel centerPanel = new JPanel();//放置文本框和二维表...JPanel southPanel = new JPanel();//放置按钮 // 添加面板到窗体 this.add(northPanel,BorderLayout.NORTH); this.add...(centerPanel,BorderLayout.CENTER); this.add(southPanel,BorderLayout.SOUTH); // 设置各面板的布局 northPanel.setLayout...(centerPanel,BorderLayout.CENTER); this.add(southPanel,BorderLayout.SOUTH); //设置面板布局 centerPanel.setLayout
实际上也可以把组件添加到其他区域: frame.add(yellowButton, BorderLayout.SOUTH); 然而,这段代码有问题,我们会在下一节中讨论。...参数:c 要添加的组件 constraints 布局管理器理解的标识符 java.awt.BorderLayout 1.0 • BorderLayout(int hgap, int vgap) 采用指定的组件水平和垂直间距来构造...解决这种问题的常见方法是使用另外一个面板(panel)。面板如同界面元素的(较小的)容器,并且在布局管理器的控制之下,它们自己能够排列在一个更大的面板中。...例如,在图9-10中,屏幕底部的三个按钮包含在一个面板中。这个面板被放置到内容窗格的南部。 假设希望显示如图9-10所示的外观,添加一个存放三个按钮的面板。...例如,如果想有一行相同尺寸的按钮,那么就可以把按钮放置在一个面板里面,这个面板使用只有单行的网格布局进行管理。
为了解决这个问题,Java提供了LayoutManager布局管理器,可以根据运行平台来自动调整组件大小,程序员不用再手动设置组件的大小和位置了,只需要为容器选择合适的布局管理器即可。...三、BorderLayout 布局管理器 BorderLayout 将容器分为 EAST 、 SOUTH 、 WEST 、 NORTH 、 CENTER五个区域,普通组件可以被放置在这 5 个区域的任意一个中...每个按钮分别位于面板的不同位置(北、南、西、东和中心)。最后,将面板添加到主窗口中并显示窗口。...然后创建一个Panel对象p1,并在其中放置一个TextField组件,表示计算器的显示屏。将p1放置在Frame的北侧。...通过点击"Previous"和"Next"按钮,可以在这三个面板之间进行切换。每个面板都包含一个简单的标签,以显示当前所在的面板。
/* * 若尘 */ package demo; import java.awt.BorderLayout; import java.awt.Container; import java.awt.FlowLayout...; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.GridLayout; import...java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import...(int i = 0; i < stu.length; i++) { stu[i] = new Student(); } /**--------------------- 建立输入面板...GridBagConstraints constraints = new GridBagConstraints(); // 水平方向最后一个组件 // 根据前一个组件而决定当前组件的相对放置方式
参考链接: Java程序使用switch ... case创建一个简单的计算器 /*** Created by YunFeng on 2014/12/6 0009.... * Student Number: * Teacher:Yongfeng Huang * University:DHU *Java's homework of No,7 weekend;*/... import java.awt....,放置按键和显示器 JButton[] buttons = new JButton[16];//创建16个按键 JButton clear = new JButton("CE");//创建清除键 ... screen.add(clear, BorderLayout.EAST);//将清零键添加到显示器右边 add(screen, BorderLayout.NORTH);//将显示器添加到BorderLayout
package com.swing; import java.awt.Container; import java.awt.Dimension; import java.awt.GridLayout;...import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.net.URL; import...package com.swing; import java.awt.BorderLayout; import java.awt.Container; import java.awt.event.ActionEvent...js=new JScrollPane(jt);//创建JScrollPane面板对象 /*如果需要在JScrollPane面板中放置多个组件,需要将多个组件放置在JPanel面板上...* 一些说明性文字,而在应用程序中,一般将多个单选按钮放置在按钮组中,使这些单选按钮 * 表现出某种功能,当用户选中某个单选按钮后,按钮组中其他按钮将被自动取消。
.*; import java.awt.event.*; import javax.swing.*; import java.util.*; public class CalenderTrain extends...bool = false; String year_int = null; //存放年份 int month_int; //存放月份 JPanel pane_ym = new JPanel(); //放置下拉列表框和控制按钮面板...JPanel pane_day = new JPanel(); //放置日期面板 JPanel pane_parent = new JPanel(); //放置以上两个面板 //定义方法绘制面板 public...CalenderTrain() { super(“JAVA日历程序”); //设定面板标题 //—以下几行使得关闭面板时退出程序 setDefaultCloseOperation(DISPOSE_ON_CLOSE...public static void main(String[] args) { CalenderTrain ct = new CalenderTrain(); } } } 五、测试结果 六.问题及心得
.*; 6 import java.awt.*; 7 8 class WindGrid extends JFrame 9 { 10 final int maxn =12; 11...myLabel[i][j].setBackground(Color.white); 30 myjpanel.add(myLabel[i][j]); //将标签放置到面板上去...31 } 32 } 33 add(myjpanel,BorderLayout.CENTER); 34 //添加几个按钮 35...mybutton=new JButton("北方参战国"); 37 mybutton.setSize(2,3); 38 add(mybutton,BorderLayout.NORTH...public static void main(String [] args) 51 { 52 new WindGrid(); 53 } 54 } 面板控制一般需要用到
12.3.2 图标的使用 Swing中的图标可以放置在按钮、标签等组件上,用于描述组件的用途。...BorderLayout类的主要成员变量: BorderLayout.NORTH:置于顶端; BorderLayout.SOUTH:置于底端; BorderLayout.EAST:置于右端; BorderLayout.WEST...12.5.1 JPanel面板 JPanel面板可以聚集一些组件来布局。...JScrollPane面板是带滚动条的面板,只能放置一个组件,不可以使用布局管理器。...如果需要在JScrollPane面板中放置多个组件,需要将多个组件放置在JPanel面板上,然后将JPanel面板作为一个整体组件添加在JScrollPane组件上。
stub Server server = new Server(); server.start(); //调用底层方法开启线程 } } 客户端程序 package 客户端; import java.awt.BorderLayout...startReceive.setFont(font); stopReceive.setFont(font); JPanel upJPanel = new JPanel(); //新建一个面板放置按钮...upJPanel.add(startReceive); upJPanel.add(stopReceive); add(upJPanel, BorderLayout.NORTH); //将放置按钮的面板添加到窗体中...stopReceive.addActionListener(this); //为停止接收按钮添加监听 JPanel textJPanel = new JPanel(); //新建一个面板放置显示接收信息...); //将放置文本框的面板添加到窗体 并置于中间部分 setBounds(100, 100, 500, 450); //设置窗口布局 setVisible(true); //设置窗口可见
它可根据orientation属性设置面板里面的每个子元素是依靠在前一个控件的旁边(横向)还是下面(纵向)。对于创建各种类型的列表非常有用。...StackPanel会自动根据面板的大小的自动调整内部控件的大小。我们就不用为按钮太大或太小而烦恼了。...MinWidth="93" Margin="10,0,0,0">Cancel 二、WrapPanel 以流的形式由左到右,由上到下显示控件,其功能类似于Java...AWT布局中的FlowLayout 三、DockPanel 以上、下、左、右、中为基本结构的布局方式,类似于Java AWT布局中的BorderLayout。...但与BorderLayout不同的是,每一个区域可以同时放置多个控件,在同一区域放置的多个控件采用的布局方式为StackPanel方式。
import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.GridBagLayout...java.awt.event.KeyEvent; import java.io.BufferedReader; import java.io.File; import...java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter;...()); this.setResizable(false); centerPanel1 = new JPanel();//放置暗文密码的面板 centerPanel2...= new JPanel();//放置明文密码的面板 southPanel = new JPanel();//放置确定和重置按钮 this.setDefaultCloseOperation
(new BorderLayout()); //设置panel面板的布局为BorderLayout布局 panel.add(p1,BorderLayout.WEST); //向panel面板的西边添加...(p4,BorderLayout.NORTH); //向panel面板的北面添加p4面板 } } //查询数据实现 import java.awt.BorderLayout; import java.awt.event.ActionEvent...BorderLayout布局 p2.add(p1,BorderLayout.SOUTH); //向p2面板中添加p1面板 p2.add(area); //向p2面板中添加...(table),BorderLayout.NORTH); //向panel3面板中添加表格 } } } // 修改数据实现 import java.awt.BorderLayout; import...} } // 删除数据实现 import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener
而ScrollPane是一个带滚动条的容器,它也不能独立存在,默认使用BorderLayout来管理其内部组件布局。...面板容器(Panel) 面板是一种特殊的容器,没有边框,不能独立存在和显示,必须作为组件添加到其他容器中:与窗体容器的特性不同。它的功能就是利用既是组件又是容器的特点,对其他组件进行分组放置。...在AWT中,通过 Panel 类实例化面板对象。调用面板对象的 add()方法将有关联的组件添加到面板上,实现组件的分组;然后,该面板对象作为其他容器对象的 add()方法的参数,放置到其他容器中。...构造方法 描述 Panel() 使用默认的布局管理器实例化面板 Panel(LayoutManager layout) 使用指定的布局管理器实例化面板 import java.awt.*; public...这是因为ScrollPane 使用 BorderLayout 布局管理器的缘故,而 BorderLayout 导致了该容器中只有一个组件被显示出来 。
小菜一枚,刚接触Java,想写个注册界面,但却遇到一个奇怪问题:代码如下: public void frame() { this.frame = new JFrame(“用户注册”); //窗体基本属性...this.frame.setVisible(true); this.frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); //设置主面板...,相当于外层div JPanel jp = new JPanel(new BorderLayout()); //东西南北中,面板 JPanel jp1 = new JPanel(new FlowLayout...jp.add(BorderLayout.NORTH,jp1); jp.add(BorderLayout.SOUTH,jp2); jp.add(BorderLayout.CENTER,jp3); jp.add...(BorderLayout.EAST,jp4); jp.add(BorderLayout.WEST,jp5); //标题 JLabel jl1 = new JLabel(“用户注册”,SwingConstants.CENTER
5.1、 BorderLayout 这种布局管理器分为东、南、西、北、中心五个方位。...在使用BorderLayout的时候,如果容器的大小发生变化,其变化规律为:组件的相对位置不变,大小发生变化。...[]){ 4 Frame f = new Frame("BorderLayout"); 5 f.setLayout(new BorderLayout()); 6 ...其实现过程如下: 首先,定义面板,为个个面板设置不同的布局,并根据需要在每个面板中放置组件: panelOne.setLayout(new FlowLayout...每个单元格的大小一样,而且放置组件时,只能从左到右、由上到下的顺序填充,用户不能任意放置组件。
BorderLayout 2.2 代码 Ext.onReady(function() { var BorderLayout = new Ext.Panel({ title: "BorderLayout...}) ], //将面板显示到HTML中: // renderTo: "BorderLayout" }); }); 3.ColumnLayout 「效果」:将内部组件水平方向展开 3.1 展示 ?...「效果」:将内部组件竖直方向进行堆叠 ❝当你写一个面板,没有 layout 时,默认就采用了这种布局。 ❞ 4.1 展示 ?...中: // ContainerLayout:垂直方式放置
领取专属 10元无门槛券
手把手带您无忧上云