布局管理器

布局管理器:frame.setLayout();

默认值为new flowLayout()

  • 流式布局

frame.setLayout(new FlowLayout(FlowLayout.RIGHT));

public class 流式布局 {
public static void main(String[] args) {
Button btn1 = new Button("btn1");
Button btn2 = new Button("btn2");
Button btn3 = new Button("btn3");
Button btn4 = new Button("btn4"); btn1.setSize(10,10);
btn2.setSize(10,10);
btn3.setSize(10,10);
btn4.setSize(10,10); Frame frame = new Frame();
//设置流式布局
frame.setLayout(new FlowLayout(FlowLayout.RIGHT)); frame.setBounds(100,100,600,400); frame.add(btn1);
frame.add(btn2);
frame.add(btn3);
frame.add(btn4);
frame.setVisible(true); }
}
  • 东西南北中

    frame.setLayout(new BorderLayout());

    public class 东西南北中 {
    public static void main(String[] args) {
    Frame frame = new Frame();
    Button btn1 = new Button("btn1");
    Button btn2 = new Button("btn2");
    Button btn3 = new Button("btn3");
    Button btn4 = new Button("btn4");
    Button btn5 = new Button("btn5"); frame.setBounds(100,100,500,400);
    //设置布局管理器
    frame.add(btn1,BorderLayout.EAST);
    frame.add(btn2,BorderLayout.WEST);
    frame.add(btn3,BorderLayout.SOUTH);
    frame.add(btn4,BorderLayout.NORTH);
    frame.add(btn5,BorderLayout.CENTER);
    frame.setVisible(true);
    }
    }
  • 表格布局

frame.setLayout(new GridLayout(3, 2));//行列

public class 表格布局 {
public static void main(String[] args) {
Frame frame = new Frame();
frame.setBounds(100, 100, 200, 200); //设置布局管理器
frame.setLayout(new GridLayout(3, 2));//行列 Button btn1 = new Button("btn1");
Button btn2 = new Button("btn2");
Button btn3 = new Button("btn3");
Button btn4 = new Button("btn4");
Button btn5 = new Button("btn5");
Button btn6 = new Button("btn6");
frame.add(btn1);
frame.add(btn2);
frame.add(btn3);
frame.add(btn4);
frame.add(btn5);
frame.add(btn6);
//frame.pack();//自动设置大小
frame.setVisible(true);//可视化
}
}

综合练习

布局管理器的综合应用

  • 总结

  1. Frame:顶级窗口
  2. Panel:面板,不能独立存在
  3. 布局管理器
    1. 流式布局 flowLayout
    2. 东西南北中 borderLayout
    3. 表格布局 gridLayout

GUI容器之布局管理器的更多相关文章

  1. Java的GUI组件的布局管理器

    1 import java.awt.BorderLayout; 2 import java.awt.FlowLayout; 3 import java.awt.Font; 4 import java. ...

  2. JAVA布局管理器

    JAVA的界面布局原理:由于Java是跨平台语言,使用绝对坐标显然会导致问题,即在不同平台.不同分辨率下的显示效果不一样.Java 为了实现跨平台的特性并且获得动态的布局效果,Java将容器内的全部组 ...

  3. 5、Java Swing布局管理器(FlowLayout、BorderLayout、CardLayout、BoxLayout、GirdBagLayout 和 GirdLayout)

    5.Java-Swing常用布局管理器       应用布局管理器都属于相对布局,各组件位置可随界面大小而相应改变,不变的只是其相对位置,布局管理器比较难以控制,一般只在界面大小需要改是才用,但即使这 ...

  4. Java-Swing常用布局管理器

    http://www.cnblogs.com/hthuang/p/3460234.html   5.Java-Swing常用布局管理器       应用布局管理器都属于相对布局,各组件位置可随界面大小 ...

  5. AWT和布局管理器

    AWT(Abstract Window Toolkit)抽象窗口开发包 component:可以显示出来的与用户进行交互的图形元素 container:容纳其他component元素的容器:conti ...

  6. JAVA GUI布局管理器

    边界布局管理器: a.布局方式:是把整个容器划分为五个部分.东西南北中,南北要贯通,中间最大 (不仅是中间的范围最大,权利也最大)当周边不存在的时候中间会占领周边,当中间不存在的时候周边不能占据中间 ...

  7. Java GUI 布局管理器

    容器可设置布局管理器,管理容器中组件的布局: container.setLayout(new XxxLayout()); Java有6种布局管理器,AWT提供了5种: FlowLayout Borde ...

  8. 【java】浅析java组件中的布局管理器

    这篇博文笔者介绍一下java组件中,常用的布局管理器.java组件中的布局方式有好几十种,所有的这些布局管理器都实现了java.awt.LayoutManager接口.接下来笔者介绍一下常用的5种布局 ...

  9. Tkinter布局管理器

    Layout management in Tkinter 原英文教程地址:zetcode.com In this part of the Tkinter tutorial, we introduce ...

随机推荐

  1. Skywalking-02:如何写一个Skywalking trace插件

    如何写一个Skywalking trace插件 javaagent 原理 美团技术团队-Java 动态调试技术原理及实践 类图 实现 ConsumeMessageConcurrentlyInstrum ...

  2. 浅析线程池 ThreadPoolExecutor 源码

    首先看下类的继承关系,不多介绍: public interface Executor {void execute(Runnable);} public interface ExecutorServic ...

  3. HTTP_CLIENT_IP、HTTP_X_FORWARDED_FOR、REMOTE_ADDR

    REMOTE_ADDR 是你的客户端跟你的服务器"握手"时候的IP.如果使用了"匿名代理",REMOTE_ADDR将显示代理服务器的IP. HTTP_CLIEN ...

  4. Git,Linux,Ubuntu,Tmux的常用命令

    常用的连接 Git命令 廖雪峰的Git教程 Git常用命令 ubuntu16.04之GitHub入门教程 Linux相关 tmux命令 Ubuntu常用命令速查手册 Linux 命令大全 其它工具 M ...

  5. CF832D题解

    题目传送门 Description 给定一棵树上的三个点 \(a,b,c\),你要制定两条起点和终点都在这三个点中的路径,使得两条路径重叠的节点最多. Solution 感觉我的方法和大众不同,显然是 ...

  6. DataGrid列显示隐藏配置

    1.列右键事件 private void data1_MouseRightButtonDown(object sender, MouseButtonEventArgs e) { ContextMenu ...

  7. vulnhub靶机-XXE Lab 1

    目录 信息收集 漏洞利用 信息收集 扫描目标主机,ip为192.168.88.154 nmap扫描结果 存在robots.txt文件.直接访问其中的admin.php显示404,加一层目录访问/xxe ...

  8. C++ 封装类 2 设计一个学生类 属性有姓名学号 可以给姓名 和学号赋值 可以显示学生的姓名和学号

    1 //设计一个学生类 属性有姓名学号 可以给姓名 和学号赋值 可以显示学生的姓名和学号 2 #include <iostream> 3 #include<string> 4 ...

  9. 数据库之 MySQL

    MySQL简单入门 数据库这个概念想必大家都听说过,我在这里也简单介绍一下. 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库.每个数据库都有一个或多个不同的 API 用于创建,访 ...

  10. Python之replace()方法失效

    1.背景 Titanic存活率预测案例: # 读取数据 df_train = pd.read_csv("./data/train.csv") df_train.head() OUT ...