java图形界面gui

图形用户界面简称GUI,提供了一种更加直观、友好的与用户进行交互方式。利用java语言进行图形用户界面操作主要由java.awt和java.swing两个包来完成。其中,AWT包是用户界面处理的基本工具包。swing包在awt包的基础上进行了升级、扩展,具有更加强大的图形界面开发功能。
awt主要的内容主要分为以下四个部分
1.容器:用于放置基本组件,其本身也是一种组件。
2.布局管理器:对容器中放置的组件进行布局管理
3.事件处理:采用事件处理机制,使得用户能够通过图形界面与系统进行交互
4.基本组件:包括按钮、标签、文本域等等,示图形界面的组成基本元素。

一、容器
容器是用来存放其它组件的一种特殊组件,在java中,所有容器类都是Container类的子类,Container类继承了Component类,该类的两个常用子类示Frame和Panel,Frame的Panel类代表两个不同类型的容器。
1.Frame类
Frame类容器是一种带有边框的框架窗口,可以不依赖于其他任何组件独立存在,Frame类继承了Window类,可以带标题、设置大小。
实例1:
import java.awt.Color;
import java.awt.Frame;
public class Test{
    public static void main(String args[]){
        Frame f= new Frame("MyFrame");//以"MyFrame"为标题创建Frame
        f.setSize(200,200);//设置窗体大小
        f.setResizable(false);//设置大小为不可调
        f.setBackground(Color.gray);//设置背景颜色
        f.setVisible(true);//设置Frame为可见
    }
}


2.Panel类
Panel类容器没有任何边框。而且需要存在与其他容器中,该类容器只是包含在其他容器中的一个区域,通常用来将许多组件组合在一个区域中
实例2:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Frame;
import java.awt.Panel;
public class test{
    public static void main(String args[]){
        Frame f = new Frame("MyFrame");
        Panel p1 = new Panel();
        p1.setBackground(Color.red);
        Panel p2 = new Panel();
        p2.setBackground(Color.green);
        f.add(p1,BorderLayout.NORTH);
        f.add(p2,BOrderLayout.CENTER)
        f.setSize(200,200);
        f.setVisible(true);
    }
}

二、布局管理器
布局管理器用于布局容器中的组件,包括设定组件的位置和尺寸大小,java语言的AWT包提供了不同类别的布局管理器,包括BorderLayout/FlowLayout/CarLayout/等等。
1.BorderLayout管理器
BorderLayout布局管理器将容器划分为东、西、南、北、中五个区域,它是Frame类的默认布局管理器。
实例:
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Frame;
public class Test{
    public static void main(String args[]){
        Frame f = new Frame("MyFrame");
        f.setLayout(new BorderLayout());
        
        f.add(new Button("按钮一"),BorderLayout.NORTH);
        f.add(new Button("按钮二"),BorderLayout.SOUTH);
        f.add(new Button("按钮三"),BorderLayout.CENTER);
        f.add(new Button("按钮四"),BOrderLayout.EAST);
        f.add(new BUtton("按钮五").BorderLayout.WEST);

        f.setSize(200,200);
        f.setVisible(true);    
    }
}

2.FlowLayout管理器
FlowLayout布局管理器用于将组件按照从坐到右、从上到下的顺序进行布局,他是Panel类的默认布局管理器。采用FlowLayout布局,不会改变组件的大小,按组件原有尺寸显示。当一个组件在本行放不下时,将自动换到下一行。FlowLayout组件之间默认的间距是5px,默认对齐方式是居中。
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Frame;
public class Test{
    public static void main(String args[]){
        Frame f = new Frame("MyFrame");
        f.setLayout(new FLowLayout());
        
        f.add(new Button("按钮一"));
        f.add(new Button("按钮二"));
        f.add(new Button("按钮三"));
        f.add(new Button("按钮四"));
        f.add(new BUtton("按钮五"));

        f.setSize(200,200);
        f.setVisible(true);    
    }
}

3.GridLayout管理器
布局管理器将容器划分为由行和列组成的多个网格,每个网格放一个组件。采用GridLayout进行布局时,在容器中按照从左往右、从上到下的顺序往网格中逐个添加组件。
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Frame;
public class Test{
    public static void main(String args[]){
        Frame f = new Frame("GridLayout");
        f.setLayout(new GridLayout(3,3));
        
        for(int i = 0 ; i < 9; i ++){
            f.add(new Button("按钮"+(i+1)));
        }

        f.setSize(200,200);
        f.setVisible(true);    
    }
}+

钟志远  江苏南京 904727147
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值