第十一周

      图形界面

1、Java中的组件
(1)AWT组件
(2)Swing组件
2、容器
所有的AWT组件都应该放到容器中,并可以设置期位置、大小等,所有的容器都是Component的子类;比如:window、panel、scroll pane
3、布局管理器
布局管理器可以使容器中的组件按照指定的位置进行摆放;并且即使容器改变了大小,布局管理器也可以准确地把组件放到指定的位置,这样就可以有效地保证版面不会混乱。
AWT中所有的布局管理器都是LayoutManager的子类,比如borderLayout(分中、东、西、南、北五个区域)、flowlayout(居中对齐)、gridlayout、cardlayout、gridbaglayout、绝对定位等
FlowLayout属于流式布局管理器
设置FlowLayout

package org.lxh.demo18.layoutdemo;
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class FlowLayoutDemo01 {
public static void main(String, args) {
JFrame frame = new JFrame("Welcome To MLDN") ; //实例化窗体对象
//设置窗体中的布局管理器为FlowLayout,所有的组件居中对齐,水平和垂直间距为3
frame.setLayout(new FlowLayout(FlowLayout.CENTER, 3, 3));
JButton but = null;
for (inti =0;i< 9; i++) {
but=new JButton("按钮 -"+i);
frame.add(but) ; //加入按钮
}
frame.setSize(280,123); //设置窗体大小
frame.setVisible(true) ; //设置窗体可见
}
}

设置BorderLayout

package org.lxh.demo18.layoutdemo;
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class BorderLayoutDemo01 {
public static void main(String] args) { //实例化窗体对象
JFrame frame = new JFrame("Welcome To MLDN") ;
//设置窗体中的布局管理器为 BorderLayout,所有的组件水平和垂直间距为3
frame.setLayout(new BorderLayout( 3, 3));
frame.add(new JButton("东(EAST) "), BorderLayout.EAST);
frame.add(new JButton("西(WEST) "),BorderLayout.WEST);
frame.add(new JButton("南(SOUTH) "), BorderLayout.SOUTH);
frame.add(new JButton("北(NORTH) "),BorderLayout.NORTH);
frame.add(new JButton("中(CENTER)"),BorderLayout.CENTER);
frame.pack(); //根据组件自动调整窗体大小
frame.setVisible(true) ; //设置窗体可见
}
}

 基本容器JFrame

用Swing创建一个窗口

package org.lxh.demo18.jframedemo;
import java.awt.Color;
import javax.swing.JFrame;
public class JFrameDemo01{
public static void main(String args」) (
JFramef=new JFrame("第一个Swing 窗体”);//实例化窗体对象
f.setSize(230,80); //设置窗体大小
f.setBackground(Color.WHITE); //设置窗体的背景颜色
f.setLocation(300,200); //设置窗体的显示位置
f.setVisible(true); //让组件显示
}
}

使用Dimension和Point 类设置组件大小和显示位置
package org.lxh.demo18.jframedemo;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Point;
import javax.swing.JFrame;
public class JFrameDemo02(
public static void main(String args,) (
JFramef=new JFrame(“第一个Swing 窗体”); //实例化窗体对象
Dimension d = new Dimension(); //实例化 Dimension 对象
d.setSize(230,80); //设置大小
f.setSize(d); //设置组件大小
f.setBackground(Color.WHITE) ; //设置窗体的背景颜色
Point p = new Point(300,200); //设置显示的坐标点
f.setLocation(p); //设置窗体的显示位置
f.setVisible(true) ; //让组件显示
}
}

标签组件JLabel

使用一个标签
package org.lxh.demo18.jlabeldemo;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Point;
public class JLabelDemo01 (
public static void main(String args,) (
JFrame frame = new JFrame("Welcome To MLDN") ; //实例化窗体对象
JLabel lab = new JLabel("MLDN", JLabel.CENTER); //实例化对象,使用居中对齐
frame.add(lab) ; //向容器中加入组件
Dimension dim = new Dimension(); //实例化 Dimension 对象
dim.setSize(200,70) ; //设置大小
frame.setSize(dim) ; //设置组件大小
frame.setBackground(Color.WHITE) ; //设置窗体的背景颜色
Point point = new Point(300,200) ; //设置显示的坐标点
frame.setLocation(point) ; //设置窗体的显示位置
frame.setVisible(true) ; //让组件显示
}
}

按键组件
建立一个普通的按钮

package org.lxh.demo18.jbuttondemo;
import java.awt.Color;
import java.awt.Font;
import javax.swing.JButton;
import javax.swing.JFrame;
public class JButtonDemo01{
public static void main(String args,) (
JFrame frame = new JFrame("Welcome To MLDN") ; //实例化窗体对象
JButton but=new JButton("按我”); //定义按钮对象
Font fnt = new Font("Serief"', Font.BOLD, 28); //设置按钮的显示字体
but.setFont(fnt) ; //设置按钮的显示字体
frame.add(but); //向容器中加入组件
frame.setSize(200,70); //设置窗体大小
frame.setLocation(300,200); //设置窗体的显示位置
frame.setVisible(true); //让组件显示
}
}

posted on 2019-11-08 08:54  卢大大007  阅读(94)  评论(1编辑  收藏  举报

导航