GUI之布局管理器(1)
来源:互联网 发布:linux rps是什么意思 编辑:程序博客网 时间:2024/06/11 19:19
BorderLayout边界布局管理器
GridLayout网络布局管理器
CardLayout卡片布局管理器
CridBagLayout网络布局管理器
1.容器中的组件布局由布局管理器控制。每个Container(比如一个Pane或一个Frame)
都有一个它相关的缺省布局管理器,panel容器默认的是FlowLayout,Frame容器默认的是
BorderLayout,我们可以通过调用setLayout()来改变布局管理器。
2.我们可以通过设置空布局管理器,来控制组件的大小和位置。可以调用setLayout(null).
3.在设置空布局管理器后,必须对所有的组件调用setLocation(),setSize()或setBounds(),
将它们定位在容器中。
(1)测试流式管理器
package com.company.ssm.crm.pojo;
import java.awt.Button;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;
public class FlowLayoutDom {
public static void main(String[] args) {
MyFram3 myFram3 = new MyFram3("FlowLayout");
//初始化显示窗体
myFram3.init();
}
}
class MyFram3 extends Frame{
public MyFram3(String title){
super(title);
}
public void init(){
//创建流失布局管理器对象
FlowLayout layout = new FlowLayout(FlowLayout.LEFT,50,30);//FlowLayout.LEFT流失左对其,水平50,
//将默认布局创建成自己的流式布局
this.setLayout(layout);
//设置背景颜色
this.setBackground(Color.BLUE);
//添加按钮
this.add(new Button("btn1"));
this.add(new Button("btn2"));
this.add(new Button("btn3"));
this.add(new Button("btn4"));
this.add(new Button("btn5"));
this.add(new Button("btn6"));
this.add(new Button("btn7"));
this.add(new Button("btn8"));
//设置当前窗体大小
this.setSize(3000, 2000);
//设置显示窗口 默认是不可见的
this.setVisible(true);
}
}
(2)BorderLayout边界布局管理器 测试
package com.company.ssm.crm.pojo;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.Frame;
public class Borlayout {
public static void main(String[] args) {
MyFram4 myFram4 = new MyFram4("BorderLayout");//括号内指定标题
//初始化显示窗体
myFram4.init();
}
}
class MyFram4 extends Frame{
public MyFram4(String title){
super(title);
}
public void init(){
//设置背景颜色
this.setBackground(Color.BLUE);
//添加按钮
this.add(new Button("btn1"),BorderLayout.EAST);//BorderLayout.EAST后跟常量来标明位置
this.add(new Button("btn2"),BorderLayout.WEST);
this.add(new Button("btn3"),BorderLayout.NORTH);
this.add(new Button("btn4"),BorderLayout.SOUTH);
this.add(new Button("btn5"),BorderLayout.CENTER);
//设置当前窗体大小
this.setSize(300, 200);
//设置显示窗口 默认是不可见的
this.setVisible(true);
}
}
(3)GridLayout网络布局管理器测试
package com.company.ssm.crm.pojo;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.Frame;
import java.awt.GridLayout;
public class GridLayoutes {
public static void main(String[] args) {
MyFram4 myFram4 = new MyFram4("GridLayout");//括号内指定标题
//初始化显示窗体
myFram4.init();
}
}
class MyFram4 extends Frame{
public MyFram4(String title){
super(title);
}
public void init(){
//创建网格布局管理器对象 ,并指明3行2列
GridLayout gridLayout = new GridLayout(3,2);
//将当前的布局管理器设置为网格管理器
this.setLayout(gridLayout);
//设置背景颜色
this.setBackground(Color.BLUE);
//添加按钮
this.add(new Button("btn1"),BorderLayout.EAST);//BorderLayout.EAST后跟常量来标明位置
this.add(new Button("btn2"),BorderLayout.WEST);
this.add(new Button("btn3"),BorderLayout.NORTH);
this.add(new Button("btn4"),BorderLayout.SOUTH);
this.add(new Button("btn5"),BorderLayout.CENTER);
//设置当前窗体大小
this.setSize(300, 200);
//设置显示窗口 默认是不可见的
this.setVisible(true);
}
}
(4) CardLayout卡片布局管理器测试
package com.company.ssm.crm.pojo;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.CardLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.Panel;
import java.awt.TextField;
public class CardLayoutes {
public static void main(String[] args) {
MyFram6 myFram6 = new MyFram6("CardLayout");//括号内指定标题
//初始化显示窗体
myFram6.init();
}
}
class MyFram6 extends Frame{
//声明面板
private Panel card_panel = null;//此面板放入卡片管理器
private Panel ctrol_panel = null;//此面板放入按钮
private CardLayout cardLayout = null;//声明卡片布局管理器
private FlowLayout flowLayout = null;//声明流式布局管理器
private Label b_1,b_2,b_3,b_4;//声明标签控件
private TextField tf_content;//声明文本框控件
private Button btn1,bth2,bth3,bth4;
public MyFram6(String title){
super(title);
}
public void init(){
card_panel = new Panel();//创建面板对象
ctrol_panel = new Panel();
cardLayout = new CardLayout();
flowLayout = new FlowLayout();
card_panel.setLayout(cardLayout);//设置指定卡片布局管理器
ctrol_panel.setLayout(flowLayout);//设置指定流式布局管理器
//申明创建4个标签和一个文本控件
b_1=new Label("page1content",Label.CENTER);//Label.CENTER对其方式
b_2=new Label("page2content",Label.CENTER);
tf_content = new TextField();// 编辑文本框
b_3=new Label("page3content",Label.CENTER);
b_4=new Label("page4content",Label.CENTER);
//把4个标签控件和一个文本框控件添加到card_panel这个容器中
card_panel.add(b_1);
card_panel.add(b_2);
card_panel.add(tf_content);
card_panel.add(b_3);
card_panel.add(b_4);
//构建4个按钮对象
btn1 = new Button("onepage");
bth2 = new Button("fristpage");
bth3= new Button("nextpage");
bth4 = new Button("lastpage");
//把按钮添加到控制流式面板
ctrol_panel.add(btn1);
ctrol_panel.add(bth2);
ctrol_panel.add(bth3);
ctrol_panel.add(bth4);
this.add(card_panel,BorderLayout.CENTER);//放入窗体(Frame)的中部
this.add(ctrol_panel,BorderLayout.SOUTH);//放入窗体(Frame)的底部
this.setSize(400,300);//设置窗体的大小
this.setVisible(true);//窗体是否显示
}
}
- GUI之布局管理器(1)
- JAVA图形界面(GUI)之布局管理器
- Java之GUI编程(二)——布局管理器
- 【Java】Java中GUI之布局管理器
- Java之GUI-------边界布局管理器
- 黑马程序员---GUI(布局管理器、事件)
- Java GUI布局管理器
- GUI布局管理器
- Java GUI布局管理器
- 学习笔记之面向对象编程29(GUI编程之布局管理器)
- Java之GUI编程(二)——布局管理器(转载自己保存学习用)
- JAVA语言GUI编程之布局管理器总结
- JavaSE学习55:GUI编程之布局管理器
- GUI布局管理器 事件处理
- GUI BorderLayout布局管理器 add
- java GUI AWT 布局管理器
- 第11章 GUI 03 布局管理器1
- Java Swing学习笔记--GUI布局管理器
- Top-Down design
- 设计模式—单例模式
- [转载]好莱坞故事创意手册!
- 数据库查询LIKE %XX%性能问题
- Android学习笔记19-内存泄漏分析
- GUI之布局管理器(1)
- linux vim 编辑器之多文件多窗口编辑
- Java构造器
- 后序、中序得前序、层序
- js中Date对象在谷歌和IE浏览器中的区别
- vi/vim的常用快捷键
- XTU.apk.apk逆向writeup
- QT读取身份证信息
- NLP14-基于Gensim中的Doc2Vec的试探