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);
}
}
2022年春节假期陆续结束,根据惯例在春节之后各大云服务商会继续开始一年的促销活动。今年二月中旬会开启新春采购季的活动,我们已经看到腾讯云商家在春节期间已经有预告活动。当时已经看到有抢先优惠促销活动,目前我们企业和个人可以领取腾讯云代金券满减活动,以及企业用户可以领取域名优惠低至.COM域名1元。 直达链接 - 腾讯云新春采购活动抢先看活动时间:2022年1月20日至2022年2月15日我们可以在...
棉花云官网棉花云隶属于江西乐网科技有限公司,前身是2014年就运营的2014IDC,专注海外线路已有7年有余,是国内较早从事海外专线的互联网基础服务提供商。公司专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前公司研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务(SaaS),拥有丰富的国内BGP、双线高防...
官方网站:点击访问青果云官方网站活动方案:—————————–活动规则—————————1、选购活动产品并下单(先不要支付)2、联系我司在线客服修改价格或领取赠送时间3、确认价格已按活动政策修改正确后,支付订单,到此产品开设成功4、本活动产品可以升级,升级所需费用按产品原价计算若发生退款,按资源实际使用情况折算为产品原价再退还剩余余额! 美国洛杉矶CN2_GIACPU内存系统盘流量宽带i...
borderlayout为你推荐
dell服务器维修DELL的维修点在哪。谁知道?机房360柴油发电机组启动电瓶充电小常识建行手机网站怎么下载建行手机银行短信营销方案有谁实验过短息营销,这个方法好吗?大家可以试试啊!oledbdatareader根据输入信息读取数据库中的数据,总是在执行OleDbDataReader reader = cmd.ExecuteReader()时通不过,renderpartialHtml.RenderPartial 报错暴力破解rar怎么暴力破解rar密码?快速且有效的listviewitemListView具有多种item布局broadcast播哈尔滨哪里有卖broadcast播 这个服装品牌的微信如何只发文字微信朋友圈如何只发文字,怎么发文字不要图
未注册域名查询 汉邦高科域名申请 云网数据 enom lunarpages 国外私服 mysql主机 帽子云 腾讯实名认证中心 昆明蜗牛家 100mbps 河南移动梦网 阵亡将士纪念日 葫芦机 japanese50m咸熟 cdn加速技术 服务器是什么 瓦工招聘 电脑主机打不开 sockscap教程 更多