第五章 图形化用户界面——GUI

一、布局

1.组件

以图形化的方式显示在屏幕上的,和用户进行交互的对象,就叫做组件。

组件包括:菜单、标签、文本框(密码框)、滚动条、单选、复选、按钮等等。

2.容器

组件不能独立的显示出来,只能将组件放在容器里,才能正常的显示。

将组件合理有序的排列和分布在容器中,(包括组件的位置 大小)称为布局。

二、布局管理器

每个容器都有自己的布局管理器,当某个容器内的组件需要改变其属性时,就需要调用其组件所在容器的布局管理器。Awt中常见的布局管理器有:BorderLayout(边界布局管理器)

FlowLayout(流式布局管理器)

GridLayout(网格布局管理器)

需要引入两个包

import java.awt.*;

import javax.swing.*;

JFrame 容器名=new JFrame();新建 窗口,容器 默认为不显示

setBackground(color.blue);设置容器基础颜色

容器名.setVisible(true);使容器显示

容器名.setTitle(“标题内容”);设置标题

容器名.setSize(350,180);设置容器大小 括号中的数字是像素

容器名.setLocation(100,260);设置容器位置 默认为(0,0)屏幕左上角

容器名.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);关闭窗体之后释放资源 没有此段代码则后台资源继续占用 &极常用

this.setResizable(false);边界不可以改变,默认为可以改变(拉伸,最大化,最小化)

容器名.setIconImage((new ImageIcon("图片路径")).getImage());

更改小图标,默认为java

JButton 按钮名=new JButton(“按钮内容”);新建按钮 设置按钮内容

按钮名.setToolTipText(文本内容);当鼠标指向按钮时显示该文本内容

容器名.add(按钮名);添加按钮进入容器

主函数 继承 JFrame函数 这样以后就可以用this使用容器

然后把所有初始化工作放在构造函数中

在主函数中调用一个新的这个主函数的类 就可以显示出容器的效果

主函数代码少 规范 美观 体现面向对象的原则

1.继承JFrame类

2.在最上方定义组件

3.在构造方法中创建组件

4.在构造方法中添加组件

5.设置窗体属性

6.显示窗体

7.在主函数中创建对象

8.所有布局管理器都可以添加任意组件

边界布局管理器

容器名.add(按钮名,BorderLayout.EAST);右侧按钮

容器名.add(按钮名,BorderLayout.WEST);左侧按钮

容器名.add(按钮名,BorderLayout.SOUTH);下侧按钮

容器名.add(按钮名,BorderLayout.NORTH);上侧按钮

容器名.add(按钮名,BorderLayout.CENTER);中部按钮,可以省略第二个参数,默认为中部

//如果不是五个按钮全部添加 则会以扩充中部为主进行填充,但中部不会被其他四个填充。

java默认的是边界布局管理器

如果要使默认变更为流式布局管理器

this.setLayout(new FlowLayout());添加布局管理器(流式布