当前位置: 首页 > news >正文

Swing 混合布局

案例一:Border边境边界

package swing;

/**
 * swing 混合布局
 */
import java.awt.*;
import javax.swing.*;

public class Myframe extends JFrame {
    // 准备工作
    JPanel jp1, jp2;// 面板
    JButton jb1, jb2, jb3, jb4, jb5, jb6;

    public static void main(String[] args) {
        Myframe myframe = new Myframe();
    }

    // 构造函数
    public Myframe() {
        jp1 = new JPanel();// 默认流式布局
        jp2 = new JPanel();
        jb1 = new JButton("西瓜");
        jb2 = new JButton("苹果");
        jb3 = new JButton("桃子");
        jb4 = new JButton("哈密瓜");
        jb5 = new JButton("蟠桃");
        jb6 = new JButton("玉米");
        // 设置布局 默认流式布局
        // 添加JPanel
        jp1.add(jb1);
        jp1.add(jb2);
        jp2.add(jb3);
        jp2.add(jb4);
        jp2.add(jb5);
        // 把JPanel放入JFrame中‘
        this.add(jp1, BorderLayout.NORTH);
        this.add(jb6, BorderLayout.CENTER);
        this.add(jp2, BorderLayout.SOUTH);
        this.setSize(300, 250);
        this.setLocation(200, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);

    }
}
View Code

 

案例二 登录界面

Label标签

文本框:JTextField

密码框:JPasswordField

标签:JLabel

package swing;

/**
 * swing 混合布局
 */
import java.awt.*;
import javax.swing.*;

public class Myframe extends JFrame {
    // 定义组件
    JPanel jp1, jp2, jp3;// 面板
    JLabel jl1, jl2, jl3;
    JTextField jtf1, jtf2;
    JPasswordField jp;
    JButton jb1, jb2, jb3, jb4, jb5, jb6;

    public static void main(String[] args) {
        Myframe myframe = new Myframe();
    }

    // 构造函数
    public Myframe() {
        jp1 = new JPanel();// 默认流式布局
        jp2 = new JPanel();
        jp3 = new JPanel();
        jl1 = new JLabel("用户名");
        jl2 = new JLabel("密    码");

        jb1 = new JButton("登录");
        jb2 = new JButton("注册");

        jtf1 = new JTextField(10);
        jp = new JPasswordField(10);
        // 设置布局管理
        this.setLayout(new GridLayout(3, 1));
        // 加入组件
        jp1.add(jl1);
        jp1.add(jtf1);
        jp2.add(jl2);
        jp2.add(jp);
        jp3.add(jb1);
        jp3.add(jb2);
        //
        this.add(jp1);
        this.add(jp2);
        this.add(jp3);
        this.setSize(300, 150);
        this.setLocation(200, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);

    }
}
View Code

 

案例三:用户注册界面

 

package swing;

/**
 * swing 混合布局
 */
import java.awt.*;
import javax.swing.*;

public class Myframe extends JFrame {
    // 定义组件
    JPanel jp1, jp2, jp3;// 面板
    JLabel jl1, jl2, jl3;
    JTextField jtf1, jtf2;
    JPasswordField jp;
    JButton jb1, jb2, jb3, jb4, jb5, jb6;
    JCheckBox jcb1, jcb2, jcb3;
    JRadioButton jrb1, jrb2;
    ButtonGroup bg;

    public static void main(String[] args) {
        Myframe myframe = new Myframe();
    }

    // 构造函数
    public Myframe() {
        jp1 = new JPanel();// 默认流式布局
        jp2 = new JPanel();
        jp3 = new JPanel();
        jl1 = new JLabel("你喜欢的运动");
        jl2 = new JLabel("你的性别");

        jb1 = new JButton("注册用户");
        jb2 = new JButton("取消注册");

        jcb1 = new JCheckBox("足球");
        jcb2 = new JCheckBox("篮球");
        jcb3 = new JCheckBox("排球");

        jrb1 = new JRadioButton("男");
        jrb2 = new JRadioButton("女");
        ButtonGroup bg = new ButtonGroup();
        bg.add(jrb1);
        bg.add(jrb2);
        // 设置布局管理
        this.setLayout(new GridLayout(3, 1));
        // 加入组件
        jp1.add(jl1);
        jp1.add(jcb1);
        jp1.add(jcb2);
        jp1.add(jcb3);

        jp2.add(jl2);

        jp3.add(jrb1);
        jp3.add(jrb2);
        //
        this.add(jp1);
        this.add(jp2);
        this.add(jp3);
        this.setSize(300, 150);
        this.setLocation(200, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);

    }
}
View Code

 案例四:

package swing;

/**
 * swing 混合布局
 */
import java.awt.*;
import javax.swing.*;

public class Myframe extends JFrame {
    // 定义组件
    JPanel jp1, jp2, jp3;// 面板
    JLabel jl1, jl2, jl3;
    JTextField jtf1, jtf2;
    JPasswordField jp;
    JButton jb1, jb2, jb3, jb4, jb5, jb6;
    // JCheckBox jcb1, jcb2, jcb3;
    JRadioButton jrb1, jrb2;
    ButtonGroup bg;
    JComboBox jcb1;
    JScrollPane jsp;
    JList jlist;

    public static void main(String[] args) {
        Myframe myframe = new Myframe();
    }

    // 构造函数
    public Myframe() {
        jp1 = new JPanel();// 默认流式布局
        jp2 = new JPanel();

        jl1 = new JLabel("你的籍贯");
        jl2 = new JLabel("旅游地点");

        String[] jg = { "北京", "上海", "广州", "深圳" };
        jcb1 = new JComboBox(jg);

        String[] dd = { "长城", "天安门", "九寨沟", "庐山", "香港" };
        jlist = new JList(dd);

        jsp = new JScrollPane(jlist);
        // 设置显示多少选项

        jlist.setVisibleRowCount(2);
        // 设置布局管理
        this.setLayout(new GridLayout(3, 1));
        // 加入组件
        jp1.add(jl1);
        jp1.add(jcb1);

        jp2.add(jl2);
        jp2.add(jlist);

        //
        this.add(jp1);
        this.add(jp2);

        this.setSize(300, 300);
        this.setLocation(200, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);

    }
}
View Code

package swing;

/**
 * swing 混合布局
 */
import java.awt.*;
import javax.swing.*;

public class Myframe extends JFrame {
    // 定义组件
    JPanel jp1, jp2, jp3;// 面板
    JLabel jl1, jl2, jl3;
    JTextField jtf1, jtf2;
    JPasswordField jp;
    JButton jb1, jb2, jb3, jb4, jb5, jb6;
    // JCheckBox jcb1, jcb2, jcb3;
    JRadioButton jrb1, jrb2;
    ButtonGroup bg;
    JComboBox jcb1;
    JScrollPane jsp;
    JList jlist;

    public static void main(String[] args) {
        Myframe myframe = new Myframe();
    }

    // 构造函数
    public Myframe() {
        jp1 = new JPanel();// 默认流式布局
        jp2 = new JPanel();

        jl1 = new JLabel("你的籍贯");
        jl2 = new JLabel("旅游地点");

        String[] jg = { "北京", "上海", "广州", "深圳" };
        jcb1 = new JComboBox(jg);

        String[] dd = { "长城", "天安门", "九寨沟", "庐山", "香港" };
        jlist = new JList(dd);

        jsp = new JScrollPane(jlist);
        // 设置显示多少选项

        jlist.setVisibleRowCount(2);
        // 设置布局管理
        this.setLayout(new GridLayout(3, 1));
        // 加入组件
        jp1.add(jl1);
        jp1.add(jcb1);

        jp2.add(jl2);
        jp2.add(jsp);

        //
        this.add(jp1);
        this.add(jp2);

        this.setSize(300, 300);
        this.setLocation(200, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);

    }
}
View Code

 

转载于:https://www.cnblogs.com/helloworld2019/p/10720499.html

相关文章:

  • vue 前端框架 (二) 表格增加搜索
  • 城市经纬度 json
  • P3356 火星探险问题
  • Redis序列化配置
  • BinaryTree
  • IO模式和IO多路复用详解
  • Educational Codeforces Round 5F. Expensive Strings
  • python对Excel表格操作
  • 流程控制之if判断
  • SpringBoot简单入门
  • Request的方法和数组
  • 关闭Linux中的iptables,firewalld,SELINUX
  • 字典类型内置方法
  • Python爬虫入门教程 61-100 写个爬虫碰到反爬了,动手破坏它!
  • 青柠音乐搜索下载2.0.1(PC软件)
  • [笔记] php常见简单功能及函数
  • 0基础学习移动端适配
  •  D - 粉碎叛乱F - 其他起义
  • Django 博客开发教程 16 - 统计文章阅读量
  • HTML中设置input等文本框为不可操作
  • JavaScript 基本功--面试宝典
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • java小心机(3)| 浅析finalize()
  • Joomla 2.x, 3.x useful code cheatsheet
  • mysql 数据库四种事务隔离级别
  • Netty 4.1 源代码学习:线程模型
  • Sublime Text 2/3 绑定Eclipse快捷键
  • ucore操作系统实验笔记 - 重新理解中断
  • Webpack 4 学习01(基础配置)
  • 反思总结然后整装待发
  • 工作手记之html2canvas使用概述
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 前端技术周刊 2019-01-14:客户端存储
  • 小而合理的前端理论:rscss和rsjs
  • 如何在招聘中考核.NET架构师
  • #我与Java虚拟机的故事#连载15:完整阅读的第一本技术书籍
  • (¥1011)-(一千零一拾一元整)输出
  • (13):Silverlight 2 数据与通信之WebRequest
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (附源码)ssm失物招领系统 毕业设计 182317
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (五)Python 垃圾回收机制
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .NET Core中Emit的使用
  • .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append)
  • @Autowired 与@Resource的区别
  • [ solr入门 ] - 利用solrJ进行检索
  • [ vulhub漏洞复现篇 ] JBOSS AS 4.x以下反序列化远程代码执行漏洞CVE-2017-7504
  • [20161214]如何确定dbid.txt
  • [ABC294Ex] K-Coloring
  • [C# WPF] 如何给控件添加边框(Border)?
  • [C++]类和对象【上篇】
  • [C++]模板与STL简介
  • [CLickhouse] 学习小计