图形界面----布局管理器

2024-08-21 11:32

本文主要是介绍图形界面----布局管理器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  1. FlowLayout是流式布局管理器,使用后,所有组件会像流水一样排列。

    package GUI;

    import java.awt.Button;
    import java.awt.FlowLayout;

    import javax.swing.JButton;
    import javax.swing.JFrame;

    public class LayoutManagerDemo01 {

    /**
    * @param args
    */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    JFrame j = new JFrame();
    j.setLayout(new FlowLayout(FlowLayout.CENTER,30,3));

    JButton jb ;

    for(int i=0;i<9;i++){
    jb = new JButton("按钮"+i);
    j.add(jb);
    }

    j.setSize(200, 200);
    j.setLocation(300, 300);
    j.setVisible(true);
    }

    }



  2. BorderLayout是将窗体划分成东南西北中5个区域,可以把组件分别放入其中一个。

    package GUI;

    import java.awt.BorderLayout;

    import javax.swing.JButton;
    import javax.swing.JFrame;

    public class LayoutManagerDemo02 {
    public static void main(String[] args){
    JFrame j = new JFrame();
    j.setLayout(new BorderLayout());

    j.add(new JButton("1111"),BorderLayout.NORTH);
    j.add(new JButton("2222"),BorderLayout.EAST);

    j.add(new JButton("3333"),BorderLayout.WEST);

    j.add(new JButton("4444"),BorderLayout.SOUTH);

    j.add(new JButton("5555"),BorderLayout.CENTER);
    j.setSize(300, 300);
    j.setVisible(true);

    }
    }



  3. GridLayout布局管理器是以表格的形式呈现的,实例化是必须设置行列数。如果不设置默认为1行。

    package GUI;

    import java.awt.GridBagLayout;
    import java.awt.GridLayout;

    import javax.swing.JButton;
    import javax.swing.JFrame;

    public class LayoutManagerDemo03 {
    public static void main(String[] args){
    JFrame j = new JFrame();
    j.setLayout(new GridLayout(3,3));
    JButton jb ;
    for(int i =0;i<9;i++){
    jb = new JButton("按钮"+i);
    j.add(jb);
    }
    j.setSize(300, 300);
    j.setLocation(300, 300);
    j.setVisible(true);

    }
    }



  4. CardLayout就像一组组件重叠放置,像卡片一样,一次只展示一张。

    package GUI;

    import java.awt.CardLayout;
    import java.awt.Container;

    import javax.swing.JFrame;
    import javax.swing.JLabel;

    public class LayoutManagerDemo04 {
    public static void main(String[] args){
    JFrame j = new JFrame();
    CardLayout card = new CardLayout();
    j.setLayout(card);
    Container con = j.getContentPane();
    con.add(new JLabel("1111"),"1");
    con.add(new JLabel("2222"),"2");
    con.add(new JLabel("3333"),"3");
    con.add(new JLabel("4444"),"4");
    con.add(new JLabel("5555"),"5");

    j.setSize(300,300);
    j.setLocation(300, 300);
    j.setVisible(true);
    card.show(con, "1");
    for(int i = 0;i<5;i++){
    try {
    Thread.sleep(3000);
    } catch (InterruptedException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    card.next(con);
    }
    }
    }



  5. 还可以通过绝对布局完成

    package GUI;

    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;

    public class LayoutManagerDemo05 {

    /**
    * @param args
    */
    public static void main(String[] args) {
    JFrame j = new JFrame();
    j.setLayout(null);
    JButton jb1 = new JButton("按钮1");
    JLabel jl = new JLabel("标签1");
    JButton jb2 = new JButton("按钮2");
    //4个参数分别为 横坐标 ,纵坐标,长度,宽度
    jb1.setBounds(50, 50, 100, 50);
    jb2.setBounds(200, 50, 100, 50);
    jl.setBounds(50, 100, 50, 50);
    j.add(jb1);
    j.add(jb2);
    j.add(jl);
    j.setSize(300, 300);
    j.setLocation(300, 300);
    j.setVisible(true);
    }

    }




这篇关于图形界面----布局管理器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1093031

相关文章

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

CSS3 布局样式及其应用举例

《CSS3布局样式及其应用举例》CSS3的布局特性为前端开发者提供了无限可能,无论是Flexbox的一维布局还是Grid的二维布局,它们都能够帮助开发者以更清晰、简洁的方式实现复杂的网页布局,本文给... 目录深入探讨 css3 布局样式及其应用引言一、CSS布局的历史与发展1.1 早期布局的局限性1.2

Python实现剪贴板历史管理器

《Python实现剪贴板历史管理器》在日常工作和编程中,剪贴板是我们使用最频繁的功能之一,本文将介绍如何使用Python和PyQt5开发一个功能强大的剪贴板历史管理器,感兴趣的可以了解下... 目录一、概述:为什么需要剪贴板历史管理二、功能特性全解析2.1 核心功能2.2 增强功能三、效果展示3.1 主界面

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的

前端CSS Grid 布局示例详解

《前端CSSGrid布局示例详解》CSSGrid是一种二维布局系统,可以同时控制行和列,相比Flex(一维布局),更适合用在整体页面布局或复杂模块结构中,:本文主要介绍前端CSSGri... 目录css Grid 布局详解(通俗易懂版)一、概述二、基础概念三、创建 Grid 容器四、定义网格行和列五、设置行

SQL server配置管理器找不到如何打开它

《SQLserver配置管理器找不到如何打开它》最近遇到了SQLserver配置管理器打不开的问题,尝试在开始菜单栏搜SQLServerManager无果,于是将自己找到的方法总结分享给大家,对SQ... 目录方法一:桌面图标进入方法二:运行窗口进入方法三:查找文件路径方法四:检查 SQL Server 安

Python从零打造高安全密码管理器

《Python从零打造高安全密码管理器》在数字化时代,每人平均需要管理近百个账号密码,本文将带大家深入剖析一个基于Python的高安全性密码管理器实现方案,感兴趣的小伙伴可以参考一下... 目录一、前言:为什么我们需要专属密码管理器二、系统架构设计2.1 安全加密体系2.2 密码强度策略三、核心功能实现详解

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i

CSS3 最强二维布局系统之Grid 网格布局

《CSS3最强二维布局系统之Grid网格布局》CS3的Grid网格布局是目前最强的二维布局系统,可以同时对列和行进行处理,将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局,本文介... 深入学习 css3 目前最强大的布局系统 Grid 网格布局Grid 网格布局的基本认识Grid 网

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re