网格布局java
㈠ java 使用网格布局后
你可以格式下,我想你大概要的这种效果,给你代码可以参考下:
importjava.awt.*;
importjavax.swing.*;
importjava.awt.GridLayout;
@SuppressWarnings("serial")
{
publicstaticvoidmain(String[]args){
JFramejf=newJFrame("注册");
JPaneljpanel=newJPanel();
jf.setContentPane(jpanel);
//设置窗口在屏幕中居中显示
doublewidth=Toolkit.getDefaultToolkit().getScreenSize().getWidth();
doubleheight=Toolkit.getDefaultToolkit().getScreenSize().getHeight();
intx=(int)(width-300)/2;
inty=(int)(height-250)/2;
jf.setBounds(x,y,300,150);
//添加标签组件
GridLayoutgird=newGridLayout(3,0);
JPaneljpanel1=newJPanel();
JPaneljpanel2=newJPanel();
JPaneljpanel3=newJPanel();
jpanel.setLayout(gird);
jpanel.add(jpanel1);
jpanel.add(jpanel2);
jpanel.add(jpanel3);
JLabelname=newJLabel("用户名:");
JTextFieldnametext=newJTextField(10);
JLabelpwd=newJLabel("密码:");
JPasswordFieldpwd1=newJPasswordField(10);
JLabelpwd2=newJLabel("确认密码:");
JPasswordFieldpwd3=newJPasswordField(10);
jpanel1.add(name);
jpanel1.add(nametext);
jpanel2.add(pwd);
jpanel2.add(pwd1);
jpanel3.add(pwd2);
jpanel3.add(pwd3);
jf.getLayeredPane().setLayout(null);
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
jpanel.setOpaque(false);
jpanel1.setOpaque(false);
jpanel2.setOpaque(false);
jpanel3.setOpaque(false);
jf.setVisible(true);
}
}
效果:
满意请采纳!
㈡ java有几种布局方式
共有6中布局
FlowLayout(流式布局) Panel的默认布局
BorderLayout(边界布局)window的默认布局 Frame和Dialog
GridLayo(网格布局)
CardLayout(卡片布局)
BoxLayout(盒式布局)
null布局GridLayo(网格布局)
java学习交流群 194252842 137104136 你可以加一下
㈢ java中gui网格包布局怎么设置
GridLayout有三种构造方法。第三种方法可以设计边距
构造方法详细信息
1。GridLayout
public GridLayout()
创建具有默认值的网格布局,即每个组件占据一行一列。
从以下版本开始:
JDK1.1
2。GridLayout
public GridLayout(int rows,
int cols)
创建具有指定行数和列数的网格布局。给布局中的所有组件分配相等的大小。
rows 和 cols 中的一个可以为零(但不能两者同时为零),这表示可以将任何数目的对象置于行或列中。
参数:
rows - 该 rows 具有表示任意行数的值零。
cols - 该 cols 具有表示任意列数的值零。
3。GridLayout
public GridLayout(int rows,
int cols,
int hgap,
int vgap)
创建具有指定行数和列数的网格布局。给布局中的所有组件分配相等的大小。
此外,将水平和垂直间距设置为指定值。水平间距将置于列与列之间。将垂直间距将置于行与行之间。
rows 和 cols 中的一个可以为零(但不能两者同时为零),这表示可以将任何数目的对象置于行或列中。
所有 GridLayout 构造方法都服从这一规定。
参数:
rows - 该 rows 具有表示任意行数的值零
cols - 该 cols 具有表示任意列数的值零
hgap - 水平间距
vgap - 垂直间距
抛出:
IllegalArgumentException - 如果将 rows 和 cols 的值都设置为零
㈣ JAVA中,Frame和Panel默认的布局管理器分别是什么类型
JAVA中,Framel默认的布局管理器是BorderLayout类型,Panel默认的布局管理器是FlowLayout类型。
FlowLayout是Panel 和 Applet 的默认布局管理器。在该布局管理器中,组件在容器中按照从上到下,从左到右的顺序进行排列,行满后则换行。
BorderLayout是Window、Frame和Dialog的默认布局管理器,其将容器分成North、South、East、West和Center 5个区域,每个区域只能放置一个组件。使用BorderLayout时,如果容器大小发生变换,组件的相对位置不变。
(4)网格布局java扩展阅读:
其它相关的布局管理器:
1、网格布局管理器(GridLayout):
GridLayout 可使容器中的各个组件呈网格状布局,平局占据容器的空间,即使容器的大小发生变化,每个组件还是平均占据容器的空间。和FlowLayout一样,GridLayout也是按照从上到下,从左到右的规律进行排列的。
2、卡片布局管理器(CardLayout):
CardLayout能够帮助用户处理两个乃至跟多的成员共享同一显示空间。它把容器分成许多层,每层的显示空间占据整个容器的大小,并且每层之允许反之一个组件,可以通过Panel来实现每层复杂的用户界面。
㈤ java网格组布局问题
private static JLabel label[]; //只定义,未初始化
for(int i=0;i<5;i++){
label[i]=new JLabel();
field[i]=new JTextField(10);
pane.add(label[i]);
//pane.add(field[i]);
}
未初始化就是用,报空指针。
建议定义时初始化
private static JLabel label[] = {new JLabel(),new JLabel(),new JLabel(),new JLabel(),new JLabel()};
private static JTextField field[] = {new JTextField(),new JTextField(),new JTextField(),new JTextField(),new JTextField()};
不知能否帮到你。
㈥ java布局管理器有哪几种各自的特点
大概讲简单的三种:
①FlowLayout流布局管理器,它的布局方式是在一行上排列组件,当一行没有足够空间时,则回行显示,默认为居中
②BorderLayout边界布局管理器,它的布局方式是将容器划分为5个部分
③GridLayout网格布局管理器,它的布局方式是将容器按照用户设置平均划分成若干网格
㈦ java网格包布局管理器的使用网格包布局的一般步骤
1、创建一个GridBagLayout网格包布局对象,并使其成为当前容器的布局管理器。
2、创建一个GridBagConstraints类型的约束对象,然后使用该对象设置各种约束条件,注意这里设置的约束条件并没有针对某一组件,要使某一组件具有设置的约束,需要使用第3步骤的方法。
3、然后使用GridBagLayout网格包布局中的setConstraints(Component com, GridBagConstraints cons)方法将GridBagConstraints类型对象设置的约束添加到被设置的组件中,这样该组件就具有了GridBagConstraints设置的约束。其中setConstraints()的第一个参数是将要添加的组件,第二个参数是GridBagConstraints类型的约束对象。
4、最后将设置了约束的组件添加到容器中。
㈧ java网格包布局管理器的使用网格包布局的第二种方法
1、使GridBagLayout布局成为当前容器的布局管理器,这里也可以不用创建GridBagLayout对象。
2、创建一个GridBagConstraints类型的约束对象,然后使用该对象设置约束条件。注意这里设置的约束条件并没有针对某一组件,要使某一组件具有设置的约束,需要使用第3步骤的方法。
3、然后使用add(Component com, Object cons)方法将组件和约束同时添加进容器中,这样添加进容器的组件就具有了第2步的约束。注意其中的add(Component com, Object cons);第一个参数是将要添加的组件,第二个参数是要添加的GridBagConstraints类型的约束对象。
㈨ java swing网格布局疑问,求指导!
GridBagConstraints 有几个成员属性,你需要把它们赋值,不能 new GridBagConstaints() 就了事了。你需要告诉它,你希望这个组件显示在 哪个 x, y 位置,x, y 方向上各占几个格子等。比如,图片中的样子,
标题是:x = 2, y = 0, height = 1, width = 2.
用户名:x = 0, y = 1, height = 1, width = 1.
密码是:x = 0, y = 2, height = 1, width = 1.
两个输入框分别是:
x = 1, y = 1, h = 1, w = 3
x = 1, y = 2, h = 1, w = 3.
这个布局是假设每个方向上都按标准单位来定义尺寸,然后我们给组件指定它在哪个位置每个方向占几个格子。
㈩ java中有关于网格布局的特点。
Label label = new Label("Hello",Label.CENTER);//AWT中的
JLabel jlabel = new JLabel("Hello",JLabel.CENTER);//swing中的
API中有详细解释,多看看。