borderlayoutJAVA BorderLayout布局
borderlayout 时间:2021-06-19 阅读:(
)
ECLIPSE中BorderLayout为什么不能使用
import?javax.swing.*;???
import?java.awt.*;???//缺包
public?class?MyBorderLayout{??//类名问题,楼上说了
public?static?void?main(String[]?args)?{
JFrame?frame=new??JFrame("BorderLayout");
JButton?btn1=new?JButton("BUTTON1");
JButton?btn2=new?JButton("BUTTON2");
//JFrame默认布局为BorderLayout,所以这句可以缺省
//frame.setLayout(new?BorderLayout());
frame.add(btn1,BorderLayout.EAST);
frame.add(btn2,BorderLayout.WEST);
frame.setSize(400,300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}borderlayout布局
可以用混合布局:
在大的框架上用一次BorderLayout,然后顶一个panel放在Center,panel再设置一个布局(看需要),比如想在中间的底部,那么就再设置一次BorderLayout,将label放到panel的south。
new Borderlayout(10,1) 参数是什么意思?
public BorderLayout(int hgap,int vgap)构造一个具有指定组件间距的边框布局。
水平间距由 hgap 指定,垂直间距由 vgap 指定。
参数:
hgap - 水平间距。
vgap - 垂直间距。
java编程创建1个框架并将其内容窗格布局管理器设置为BorderLayout
import?java.awt.*;
import?java.awt.event.*;
import?javax.swing.*;
public?class?blue?implements?ActionListener
{
JFrame?frame;
JPanel?p1,p2;
JButton?b1,b2,b3,bb1,bb2,bb3;
JLabel?lbl=new?JLabel();
int?i=0;
public?static?void?main(String[]?args){
blue?qi=new?blue();
qi.go();
}
????public?void?go(){
frame=new?JFrame("2012/6/24");
p1=new?JPanel();
p2=new?JPanel();
b1=new?JButton("blue1");
b2=new?JButton("blue2");
b3=new?JButton("blue3");
p1.setLayout(new?BorderLayout());
????p1.add(b1);
p1.add("West",b2);
p1.add(b3);
bb1=new?JButton("blue4");
bb2=new?JButton("blue5");
bb3=new?JButton("blue6");
p2.setLayout(new?BorderLayout());
p2.add(bb1);
p2.add("West",bb2);
p2.add("South",bb3);
????frame.getContentPane().add(p1);
frame.getContentPane().add("West",p2);
????frame.getContentPane().add("North",lbl);
????b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
bb1.addActionListener(this);
bb2.addActionListener(this);
bb3.addActionListener(this);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400,300);
frame.setLocation(500,300);
frame.setVisible(true);
}
public?void?actionPerformed(ActionEvent?e){
i++;
lbl.setText("您已经点击了"+i+"次按钮!");
}
};FlowLayout,BorderLayout ,GridLayout ,CardLayout,GridBagLayout ,null ,BoxLayout布局的特点各是什么?
FlowLayout:流布局用于安排有向流中的组件,这非常类似于段落中的文本行。
流布局一般用来安排面板中的按钮。
它使得按钮呈水平放置,直到同一条线上再也没有适合的按钮。
线的对齐方式由 align 属性确定。
可能的值为:
LEFT - 此值指示每一行组件都应该是左对齐的
RIGHT - 此值指示每一行组件都应该是右对齐的
CENTER - 此值指示每一行组件都应该是居中的
LEADING - 此值指示每一行组件都应该与容器方向的开始边对齐
TRAILING - 此值指示每行组件都应该与容器方向的结束边对齐
BorderLayout :这是一个布置容器的边框布局,它可以对容器组件进行安排,并调整其大小,使其符合下列五个区域:北、南、东、西、中。
每个区域最多只能包含一个组件,并通过相应的常量进行标识:NORTH、SOUTH、EAST、WEST、CENTER。
CardLayout :它将容器中的每个组件看作一张卡片。
一次只能看到一张卡片,容器则充当卡片的堆栈。
当容器第一次显示时,第一个添加到 CardLayout 对象的组件为可见组件。
卡片的顺序由组件对象本身在容器内部的顺序决定。
GridBagLayout :它是一个灵活的布局管理器,它不要求组件的大小相同便可以将组件垂直、水平或沿它们的基线对齐。
每个 GridBagLayout 对象维持一个动态的矩形单元网格,每个组件占用一个或多个这样的单元,该单元被称为显示区域。
null:当布局设置为null时,可使用java.awt.Window 提供的public void setBounds(int x,
int y,
int width,
int height)移动组件并调整其大小。
由 x 和 y 指定左上角的新位置,由 width 和 height 指定新的大小。
如果 width 值或 height 值小于之前调用 setMinimumSize 指定的最小大小,则它的值将自动增加。
覆盖:
类 Component 中的 setBounds
参数:
x - 组件的新 x 坐标
y - 组件的新 y 坐标
width - 组件的新 width
height - 组件的新 height
BoxLayout:允许垂直或水平布置多个组件的布局管理器。
这些组件将不包装,因此举例来说,垂直排列的组件在重新调整框架的大小时仍然被垂直排列。
建议你可以多翻一下java 帮助!JAVA BorderLayout布局
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class PanelRunner2 {
public static void main(String[] args)
{
JFrame frame = new JFrame("Color Panels");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(1200, 1000);
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
panel.setPreferredSize(new Dimension(1200, 1000));
JPanel subpanel1 = new JPanel();
subpanel1.setBackground(Color.RED);
subpanel1.setPreferredSize(new Dimension(200, 200));
panel.add(subpanel1, BorderLayout.NORTH);
JPanel panelCenter = new JPanel();
panelCenter.setLayout(new GridLayout(1,4));
JPanel subpanel2 = new JPanel();
subpanel2.setBackground(Color.WHITE);
subpanel2.setPreferredSize(new Dimension(200, 200));
panelCenter.add(subpanel2, BorderLayout.WEST);
JPanel subpanel3 = new JPanel();
subpanel3.setBackground(Color.BLUE);
subpanel3.setPreferredSize(new Dimension(200, 200));
panelCenter.add(subpanel3);
JPanel subpanel4 = new JPanel();
subpanel4.setBackground(Color.GREEN);
subpanel4.setPreferredSize(new Dimension(200, 200));
panelCenter.add(subpanel4);
JPanel subpanel5 = new JPanel();
subpanel5.setBackground(Color.YELLOW);
subpanel5.setPreferredSize(new Dimension(200, 200));
panelCenter.add(subpanel5);
panel.add(panelCenter,BorderLayout.CENTER);
JPanel subpanel6 = new JPanel();
subpanel6.setBackground(Color.ORANGE);
subpanel6.setPreferredSize(new Dimension(200, 200));
panel.add(subpanel6, BorderLayout.SOUTH);
frame.add(panel);
frame.setVisible(true);
}
}
无忧云怎么样?无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点,目前商家开启了夏日清凉补贴活动,商家的机器还是非常...
咖啡主机怎么样?咖啡主机是一家国人主机销售商,成立于2016年8月,之前云服务器网已经多次分享过他家的云服务器产品了,商家主要销售香港、洛杉矶等地的VPS产品,Cera机房 三网直连去程 回程CUVIP优化 本产品并非原生地区本土IP,线路方面都有CN2直连国内,机器比较稳定。咖啡主机目前推出美国洛杉矶弹性轻量云主机仅13元/月起,高防云20G防御仅18元/月;香港弹性云服务器,香港HKBN CN...
香港服务器多少钱一个月?香港服务器租用配置价格一个月多少,现在很多中小型企业在建站时都会租用香港服务器,租用香港服务器可以使网站访问更流畅、稳定性更好,安全性会更高等等。香港服务器的租用和其他地区的服务器租用配置元素都是一样的,那么为什么香港服务器那么受欢迎呢,香港云服务器最便宜价格多少钱一个月呢?阿里云轻量应用服务器最便宜的是1核1G峰值带宽30Mbps,24元/月,288元/年。不过我们一般选...
borderlayout为你推荐
订房系统什么是酒店客房控制系统?youtube创始人我的世界captainsparklez是谁ico监管BTCB是什么?暴力破解rar求暴力破解rar压缩包软件手机软件开发工具如何自己开发一个app软件全局钩子加载全局钩子是什么,每次进入股票软件都说加载全局钩子,是中病毒了吗za是哪个国家的IE是哪个国家的缩写ocr软件下载如何安装汉王ocr文字识别软件flash序列号flash激活序列号是?cc防火墙web防火墙有什么作用
联通vps 主机屋 2014年感恩节 名片模板psd 南昌服务器托管 godaddy域名证书 域名转接 徐正曦 服务器是干什么的 昆明蜗牛家 华为云盘 google台湾 阿里云邮箱登陆地址 阿里云个人邮箱 alexa世界排名 godaddy中文 服务器是什么意思 so域名 cc加速器 iptables 更多