import java.awt.*; import javax.swing.*; /**
* @author Hujun *BorderLayout演示 *1、继承JFrame *2、定义需要的组件
*3、创建组件(在构造函数中) *4、添加组件
*5、设置窗口JFrame */
public class Demo_layout extends JFrame{ JButton[] jb=new JButton[5]; public static void main(String[] args) { Demo_layout demo=new Demo_layout(); } public Demo_layout() {
//创建组件
jb[0]=new JButton(\中\jb[1]=new JButton(\北\jb[2]=new JButton(\南\jb[3]=new JButton(\西\jb[4]=new JButton(\东\
//添加组件
this.add(jb[0], BorderLayout.CENTER); this.add(jb[1], BorderLayout.NORTH); this.add(jb[2], BorderLayout.SOUTH); this.add(jb[3], BorderLayout.WEST); this.add(jb[4], BorderLayout.EAST);
//设置窗体属性 this.setTitle(\ this.setSize(200, 200); this.setLocation(300, 300); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
this.setVisible(true);
2、流式布局FlowLayout
//设置布局管理器
this.setLayout(new FlowLayout(FlowLayout.RIGHT));
//禁止改变窗体大小 this.setResizable(false);
3、网格布局GridLayout
//设置布局管理器
this.setLayout(new GridLayout(3,3));
设置间隔
this.setLayout(new GridLayout(3,3,10,10));
4、开发GUI布局
*1、继承JFrame
*2、定义需要的组件
*3、创建组件(在构造函数中) 4、设置布局管理器 *5、添加组件
*6、设置窗口JFrame
第31讲 常用组件
1、面板组件JPanel
JPanel是非顶层容器
import java.awt.*; import javax.swing.*; /**
* @author Hujun * */
public class Demo4 extends JFrame{ //定义组件 JPanel jp1,jp2; JButton[] jb=new JButton[6]; public static void main(String[] args) { Demo4 demo=new Demo4(); } public Demo4() {
//JPanel 布局默认为FlowLayout jp1=new JPanel(); jp2=new JPanel();
// }
}
jb[0]=new JButton(\西瓜1\jb[1]=new JButton(\西瓜2\jb[2]=new JButton(\西瓜3\jb[3]=new JButton(\西瓜4\jb[4]=new JButton(\西瓜5\jb[5]=new JButton(\西瓜6\
//设置布局
//添加组件 jp1.add(jb[0]); jp1.add(jb[1]); jp1.add(jb[2]); jp2.add(jb[3]); jp2.add(jb[4]);
this.add(jp1, BorderLayout.NORTH); this.add(jb[5]);
this.add(jp2, BorderLayout.SOUTH);
// 设置窗体属性
this.setTitle(\布局\this.setSize(300, 300); this.setLocation(300, 300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //禁止改变窗体大小 this.setResizable(false); this.setVisible(true);
2、文本框、密码框、标签组件
JTextField, JPasswordField, JLabel
import java.awt.*;
import javax.swing.*;
public class Demo5 extends JFrame{
//定义组件
JPanel jp1,jp2,jp3; JLabel jl1,jl2; JButton jb1,jb2; JTextField jt;
JPasswordField jpf;
public static void main(String[] args) { }
Demo5 demo=new Demo5();
public Demo5() { jp1=new JPanel(); jp2=new JPanel(); jp3=new JPanel(); jl1=new JLabel(\用户名\ jl2=new JLabel(\密 码\ jb1=new JButton(\登录\ jb2=new JButton(\取消\ jt=new JTextField(10); jpf=new JPasswordField(10);
//设置布局管理
this.setLayout(new GridLayout(3, 1));
jp1.add(jl1); jp1.add(jt);
jp2.add(jl2); jp2.add(jpf);
jp3.add(jb1); jp3.add(jb2);