JAVA学习笔记(四十五) - 布局管理器

FlowLayout流式布局管理器

/*
 * FlowLayout流式布局管理器
 */
public class Test03 {
    public static void main(String[] args) {
        Frame frame=new Frame("My Frame");
        Button btn1=new Button("按钮1");
        Button btn2=new Button("按钮2");
        Button btn3=new Button("按钮3");
        Button btn4=new Button("按钮4");

        frame.add(btn1);
        frame.add(btn2);
        frame.add(btn3);
        frame.add(btn4);

        frame.setSize(200, 200);
        frame.setLocationRelativeTo(null);
        //frame.setLayout(new FlowLayout());//设置窗体布局为流式布局,默认为边框布局
        frame.setLayout(new FlowLayout(FlowLayout.LEFT, 10, 10));//设置窗体布局为流式布局,默认为边框布局
        frame.setVisible(true);
    }
}

BorderLayout边框布局管理器

import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;

/*
 *BorderLayout边框布局管理器
 */
public class Test04 {
    public static void main(String[] args) {
        Frame frame=new Frame("My Frame");
        Button btn1=new Button("按钮1");
        Button btn2=new Button("按钮2");
        Button btn3=new Button("按钮3");
        Button btn4=new Button("按钮4");
        Button btn5=new Button("按钮5");

        frame.setLayout(new BorderLayout(10,5));

        frame.add("North", btn1);
        frame.add("South",btn2);
        frame.add("West",btn3);
        frame.add("East",btn4);
        frame.add("Center",btn5);//默认将组件添加到Center中间区域
        frame.add("North",new Button("按钮6"));

        frame.setSize(200, 200);
        frame.setLocationRelativeTo(null);
        frame.setBackground(Color.gray);
        frame.setVisible(true);
    }
}

GridLayout网格布局管理器

import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.GridLayout;

/*
 *GridLayout网格布局管理器
 */
public class Test05 {
    public static void main(String[] args) {
        Frame frame=new Frame("My Frame");
        Button btn1=new Button("按钮1");
        Button btn2=new Button("按钮2");
        Button btn3=new Button("按钮3");
        Button btn4=new Button("按钮4");
        Button btn5=new Button("按钮5");
        Button btn6=new Button("按钮6");
        Button btn7=new Button("按钮7");

        frame.setLayout(new GridLayout(0, 2));//设置窗体为网格布局

        frame.add(btn1);
        frame.add(btn2);
        frame.add(btn3);
        frame.add(btn4);
        frame.add(btn5);
        frame.add(btn6);
        frame.add(btn7,2);//将组件添加到指定的网格中,索引从0开始,组件开始移动

        frame.setSize(200, 200);
        frame.setLocationRelativeTo(null);
        frame.setBackground(Color.gray);
        frame.setVisible(true);
    }
}

CardLayout卡片布局管理器

import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Frame;
import java.awt.Panel;

/*
 * CardLayout卡片布局管理器
 */
public class Test06 {
    public static void main(String[] args) {
        Frame frame=new Frame("我的窗体");
        Panel pnl1=new Panel();
        Panel pnl2=new Panel();
        Panel pnl3=new Panel();

        CardLayout c=new CardLayout();//创建卡片布局管理器
        frame.setLayout(c);//设置窗体为卡片布局
        pnl1.setBackground(Color.red);
        pnl2.setBackground(Color.yellow);
        pnl3.setBackground(Color.blue);

        //向窗体中添加面板组件,并指定名称
        frame.add(pnl1,"first");
        frame.add(pnl2,"second");
        frame.add(pnl3,"third");

        c.last(frame);//显示最后一个卡片,即最后加入的组件
        c.previous(frame);//显示上一个卡片
        c.show(frame, "first");//显示名称为first的卡片

        frame.setSize(300, 300);
        frame.setVisible(true);
    }
}
时间: 2024-10-16 18:24:36

JAVA学习笔记(四十五) - 布局管理器的相关文章

【Unity 3D】学习笔记四十五:游戏实例——击垮围墙

用这个游戏实例来总结之前我们复习的所有关于物理引擎的知识.在游戏中,发送一个球形的炮弹来击垮前面的墙.给炮弹与墙都添加了刚体组件,给炮弹绑定了粒子系统,并且在炮弹的粒子动画中添加了5组不同的颜色,显示移动轨迹. using UnityEngine; using System.Collections; public class Script_06_14 : MonoBehaviour { //炮弹对象 private GameObject obj; //准心贴图 public Texture te

JAVA学习笔记(四十九)- Swing相关组件

JFrame组件 import java.awt.Color; import javax.swing.JFrame; import javax.swing.JPanel; /* * Swing是在AWT基础上的扩展 * javax.swing包及其扩展包,组件的命名多以J开关 * * JFrame组件 */ public class Test08 { public static void main(String[] args) { JFrame frame=new JFrame("我的窗体&qu

JAVA学习笔记(四十四)- AWT组件 (Abstract Window Toolkit)

Frame窗体组件 import java.awt.Color; import java.awt.Frame; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; /* * Frame窗体组件 */ public class Test01 { public static void main(String[] args) { Frame frame=new Frame("我的窗体"); //创建窗

【Node.js学习笔记四】Node包管理器(Node Packaged Manager,NPM)

Node包管理器是一个命令行应用程序.可以查找.安装.删除.发布以及做与Node封装模块相关的其他很多东西. Node包管理器提供了Node包的注册表和开发之间的联系. Node包管理器的命令

JAVA学习笔记(三十五)- 随机读写文件 RandomAccessFile

RandomAccessFile类 /* * RandomAccessFile类,随机读写文件 * * 数据分段要有规律,每段大小相等,可以将每段数据设置为较大的值,足以存在每一个段的数据 * */ public class Test04 { public static void main(String[] args) throws IOException { //writeFile(); readFile(); } // 写入数据 public static void writeFile()

JAVA学习笔记(四十八)- 适配器类 Adapter

适配器类 Adapter,对接口中的抽象方法进行空实现 import java.awt.Button; import java.awt.Frame; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEve

JAVA学习第四十五课 — 其他对象API(一)

一.System类 1. static long currentTimeMillis() 返回以毫秒为单位的当前时间. 实际上:当前时间与协调世界时 1970 年 1 月 1 日午夜之间的时间差(以毫秒为单位测量). long time = 1414069291407l;//long型 后面加l System.out.println(time); 2. static void exit(int status)终止当前正在运行的 Java 虚拟机. static void gc()运行垃圾回收器

JAVA学习第四十五课 — 其它对象API(一)System、Runtime、Math类

一.System类 1. static long currentTimeMillis() 返回以毫秒为单位的当前时间. 实际上:当前时间与协调世界时 1970 年 1 月 1 日午夜之间的时间差(以毫秒为单位測量). long time = 1414069291407l;//long型 后面加l System.out.println(time); 2. static void exit(int status)终止当前正在执行的 Java 虚拟机. static void gc()执行垃圾回收器

java学习笔记(十五)java网络编程

OSI模型分为七层(从下到上):物理层.数据链路层.网络层.传输层.会话层.表示层.应用层. 不同主机之间的相同层次称为对等层.对等层之间互相通信需要遵守一定的规则,称之为协议,我们将某个主机上运行的某种协议的集合称为协议栈.主机正是利用这个协议栈来接收和发送数据的. TCP/IP模型:网络接口层.网络互连层.传输层.应用层. 在网络编程中需要注意的问题包括: 1.是如何找到网络上的主机上的要进行通讯的程序: 2.是找到了主机上的程序后如何传输数据. 端口号:是一组16位的无符号二进制数,每个端