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); }
}
案例二 登录界面
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); }
}
案例三:用户注册界面
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); }
}
案例四:
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); }
}
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); }
}
Swing 混合布局的更多相关文章
- DIV+CSS 网页布局之:混合布局
1.混合布局 在了解了一列.两列和三列布局之后,混合布局也就不难理解了,混合布局也可以叫综合型布局,那么混合布局就可以在一列布局的基础之上,分为两列布局,三列布局,网页布局的结构普遍都是三列布局,但是 ...
- (转)Java 的swing.GroupLayout布局管理器的使用方法和实例
摘自http://www.cnblogs.com/lionden/archive/2012/12/11/grouplayout.html (转)Java 的swing.GroupLayout布局管理器 ...
- CSS 实现流布局以及多列混合布局
基本流布局 <!DOCTYPE html > <html> <head> <meta charset="utf-8"> <ti ...
- 慕课笔记利用css进行布局【混合布局】
<html> <head> <title>混合布局学习</title> <style type="text/css"> ...
- doT.js实现混合布局,判断,数组,函数使用,取模,数组嵌套
doT.js实现混合布局 数据结构 { "status": "1", "msg": "获取成功", "info ...
- RecyclerView实现混合布局
PS:好长时间不写博客了,起初是不知道写些什么,后来接触了到了很多东西,原本看似简单的东西,背后都隐藏着巨大的秘密,想handler的使用,一般情况下会引起内存泄漏问题,想着找到方法结局不就得了吗,可 ...
- Java Swing 空布局
Swing 空布局 试了盒布局,说实话不太会用,很多地方都没法更加的细节,又翻了翻资料,知道了还有一个空布局,一看,真不错,很适合我这种菜鸡 用坐标就可以完成界面的布局,不错 话不多说,直接代码 pa ...
- Java Swing 盒布局管理器
Swing 盒布局管理器 因为项目的原因,重新看看swing的东西,在想要将两个横向的容器纵向表示的时候,发现用盒布局 话不多说,直接代码 package ui; import javax.swing ...
- Java 的swing.GroupLayout布局管理器的使用方法和实例(转)
The following builds a panel consisting of two labels in one column, followed by two textfields in t ...
随机推荐
- 学习Identity Server 4的预备知识 (误删, 重补)
我要使用asp.net core 2.0 web api 搭建一个基础框架并立即应用于一个实际的项目中去. 这里需要使用identity server 4 做单点登陆. 下面就简单学习一下相关的预备知 ...
- Python300篇电子书免费送
此电子书集合由猪哥整理,免费发布于微信公众号:裸睡的猪. 此电子书集合将持续更新,获取最新电子书集合请关注微信公众号:裸睡的猪,回复:电子书此电子书集合仅用作个人学习,请勿用于商业获利!!! 获取方式 ...
- 【深度学习篇】--Seq2Seq模型从初识到应用
一.前述 架构: 问题: 1.压缩会损失信息 2.长度会影响准确率 解决办法: Attention机制:聚焦模式 “高分辨率”聚焦在图片的某个特定区域并以“低分辨率”,感知图像的周边区域的模式.通过大 ...
- Android多Module下的Application引用方式
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 Android开发时,Application一般都放在APP中,Lib模块如果想引用Application则需要在APP中进行传递, ...
- C#利用NPOI操作Excel文件
NPOI作为开源免费的组件,功能强大,可用来读写Excel(兼容xls和xlsx两种版本).Word.PPT文件.可是要让我们记住所有的操作,这便有点困难了,至此,总结一些在开发中常用的针对Excel ...
- 我的那些年(9)~我来团队了,Mvc兴起了
回到目录 我的那些年(9)~我来团队了,Mvc兴起了 在一次后出办事后直接去面试了 面试就是答卷子 六里桥一个好地址 搬回老家了 在老婆的建议下学驾照了 拿到大专毕业证了 买车了 愉一切可以愉的时间学 ...
- Python命令行参数解析模块argparse
当写一个Python脚本时经常会遇到不同参数不同功能的情况,如何做一个更好看的命令帮助信息以及对命令参数解析呢? 这就需要使用argparse模块 #!/usr/bin/env python # -* ...
- WinForm的EXE破解(基于IL修改)
一.目的与目标 1.1 主题目的 部门新人较多,希望通过本次分享让同学们对以下知识点有个认识: 破解原理 IL原理 强签名与加密 resx文件 由于时间有限,本文作为部门分享演示过程中辅助性文档,会对 ...
- 编程心法 之 怎么选择合适的IDE
一般情况下,使用IDE进行开发可以极大的提高开发效率 最佳选择 如果语言是GNU开源的则Eclipse,因为Eclipse就是开源的 例如C和C++这样的底层语言并且经典的语言,基于GNU的语言,推荐 ...
- ServiceStack.Redis 请求次数6000次异常
Redis是一个非常NB的内存级的数据库,我们可以把很多”热数据“(即读写非常多的数据)放入其中来操作,这样就减少了和关系型数据库(如SqlServer/My Sql等)之间的交互,程序的响应速度也大 ...