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 ...
随机推荐
- 一句话HTML编辑器
一句话HTML编辑器 data:text/html,<body oninput="i.srcdoc=h.value"><style>#i{width:70% ...
- PHP全栈学习笔记10
php常量,常量是不能被改变的,由英文字母,下划线,和数字组成,但是数字不能作为首字母出现. bool define ( string $name , mixed $value [, bool $ca ...
- 基于IPV6数据包的分析(GNS3)
一.实验拓扑 二.路由配置 1.路由R1的详细配置(以R1为例,R2与R3相同) R1(config)#interface fastEthernet 0/1 R1(config-if)#ipv6 ad ...
- python基础-函数(9)
一.函数的介绍 如果在开发程序时,需要某块代码多次,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块组织为一个小模块,这就是函数 函数的语法格式: def 函数名(): 函数的功能代码 ...
- ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了
引言 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发者 ...
- Entity Framework 之存储过程篇
最近几天在搞CRUD,使用的是EF这个ORM,最近的项目中上了存储过程,就把在开发中的经验分享出来!我们先创建一个最基本的存储过程,脚本如下,这是一个不带参数的存储过程,我们从最简单的往上走! cre ...
- string类的几种方法
string str="123abc456";int i=3;1 取字符串的前i个字符 str=str.Substring(0,i); // or str=str.Remov ...
- SpringBoot启动原理及相关流程
一.springboot启动原理及相关流程概览 springboot是基于spring的新型的轻量级框架,最厉害的地方当属自动配置.那我们就可以根据启动流程和相关原理来看看,如何实现传奇的自动配置 二 ...
- 程序猿想聊天 - 創問 4C 團隊教練心得(二)
在第二天裡,主要談的是關於 Courage (勇氣) . Co-Create (共創) 的部分因為我們不是真實的團隊,就沒有繼續下去了 一早開始先回顧了一下前一天的內容,接下來我們就開始玩小遊戲 這個 ...
- 【转载】Win10系统如何设置所有程序默认以管理员身份运行?
在win10系统中有些用户发现一些程序只有使用管理员身份运行能才打开,这样的话就感觉会麻烦很多,那么有没有办法设置所有程序都默认以管理员身份运行,而无需我们一个一个右键点击再打开呢? 目前最好的方法就 ...