当前位置 : IT培训网 > Java开发 > Java教程 > Java编程开发之标签、按钮和按钮事件简介

Java编程开发之标签、按钮和按钮事件简介

时间:2016-09-01 16:50:35  来源:Java培训网  作者:IT培训网  已有:名学员访问该课程
标签(JLabel)是最简单的Swing组件。标签对象的作用是对位于其后的界面组件作说明。可以设置标签的属性,即前景色,背景色、字体等,但不能动态地编辑标签中的文本。

什么是标签、什么是按钮及什么是按钮事件,今天IT培训网小编就一一为大家介绍清楚,有需要的同学可以学习一下了。好了,不啰嗦了,正文开始:

标签和按钮也许是图形界面中最常见的两种组件,按钮又总是与激发动作事件有关。

什么是标签

标签(JLabel)是最简单的Swing组件。标签对象的作用是对位于其后的界面组件作说明。可以设置标签的属性,即前景色,背景色、字体等,但不能动态地编辑标签中的文本。

程序关于标签的基本内容有以下几个方面:

声明一个标签名;

创建一个标签对象;

将标签对象加入到某个容器。

JLabel类的主要构造方法是:

JLabel ():构造一个无显示文字的标签;

JLabel (String s):构造一个显示文字为s的标签;

JLabel(String s, int align):构造一个显示文字为s的标签。align为显示文字的水平方式,对齐方式有三种:

左对齐:JLabel.LEFT

中心对齐:JLabel.CENTER

右对齐:JLabel.RIGHT

JLabel类的其他常用方法是:

setText(String s):设置标签显示文字;

getText():获取标签显示文字;

setBackground(Color c):设置标签的背景颜色,默认背景颜色是容器的背景颜色;

setForeground(Color c):设置标签上的文字的颜色,默认颜色是黑色。

什么是按钮

按钮(JButton)在界面设计中用于激发动作事件。按钮可显示文本,当按钮被激活时,能激发动作事件。

JButton常用构造方法有:

JButton():创建一个没有标题的按钮对象;

JButton(String s):创建一个标题为s的按钮对象。

 

JButton类的其他常用方法有:

setLabel(String s):设置按钮的标题文字。

getLabel():获取按钮的标题文字。

setMnemonic(char mnemonic):设置热键

setToolTipText(String s):设置提示文字。

setEnabled(boolean b):设置是否响应事件

setRolloverEnabled(boolean b):设置是否可滚动。

addActionListener(ActionListener aL):向按钮添加动作监视器。

removeActionListener(ActionListener aL):移动按钮的监视器。

按钮处理动作事件的基本内容有以下几个方面:

与按钮动作事件相关的接口是ActionListener,给出实现该接口的类的定义;

声明一个按钮名;

创建一个按钮对象;

将按钮对象加入到某个容器;

为需要控制的按钮对象注册监视器,对在这个按钮上产生的事件实施监听。如果是按钮对象所在的类实现监视接口,注册监视器的代码形式是

    addActionListener(this);

参见【例 11-3】,如果是别的类A的对象a作为监视器,类A必须实现ActionListener接口,完成监视器注册需用以下形式的两行代码:

    A a = new A();  //创建类A的实例a

    addActionListener(a);  //用对象a作为监视器对事件进行监视。

在实现接口ActionListener的类中,给出处理事件的方法的定义:

    public void actionPerformed(ActionEvent e);

在处理事件的方法中,用获取事件源信息的方法获得事件源信息,并判断和完成相应处理。获得事件源的方法有:方法 getSource()获得事件源对象;方法getActionCommand()获得事件源按钮的文字信息。

【例 11-3】处理按钮事件实例,应用程序定义了一个窗口,窗口内设置两个按钮,当点击Red按钮时,窗口的背景色置成红色;点击Green按钮时,窗口的背景色置成绿色。

import javax.swing.*;import java.awt.*;import java.awt.event.*;

public class J503{

    public static void main(String[]args){

        ButtonDemo myButtonGUI=new ButtonDemo();//声明并创建按钮对象

        myButtonGUI.setVisible(true);

    }

}

class ButtonDemo extends JFrame implements ActionListener{

    public static final int Width=250;

    public static final int Height=200;

    ButtonDemo(){

        setSize(Width,Height); setTitle("按钮事件样例");

        Container conPane=getContentPane();

        conPane.setBackground(Color.BLUE);

        conPane.setLayout(new FlowLayout());//采用FlowLayout布局

        JButton redBut=new JButton("Red");

        redBut.addActionListener(this);//给Red按钮注册监视器

        conPane.add(redBut);//在窗口添加Red按钮

        JButton greenBut=new JButton("Green");

        greenBut.addActionListener(this);//给Green按钮注册监视器

        conPane.add(greenBut);//在窗口添加Green按钮

    }

    public void actionPerformed(ActionEvent e){//实现接口处理事件的方法

        Container conPane=getContentPane();

        if(e.getActionCommand().equals("Red"))//是Red按钮事件

            conPane.setBackground(Color.RED);

        else if(e.getActionCommand().equals("Green"))//是Green按钮事件

            conPane.setBackground(Color.GREEN);

        else{}

    }

}

用鼠标点击按钮产生事件对象,将事件送达对象,这个过程称为激发事件。当一个事件被送到监视器对象时,监视器对象实现的接口方法被调用,调用时系统会提供事件对象的参数。程序中虽然没有调用监视器方法的的代码,但是程序做了两件事:第一,指定哪一个对象是监视器,它将响应由按钮的激发的事件,这个步骤称为监视器注册。第二,必须定义一个方法,当事件送到监视器时,这个方法将被调用。程序中没有调用这个方法的代码,这个调用是系统执行的。

在上面的程序中,代码

    redBut.addActionListener(this);

注册this作为redBut按钮的监视器,随后的代码也注册this作为greenBut按钮的监视器。在上述的程序中,this就是当前的ButtonDemo对象myButtonGUI。这样,ButtonDemo类就是监视器对象的类,对象MyButtonGUI作为两个按钮的监视器。在类ButtonDemo中有监视器方法的实现。当一个按钮被点击时,系统以事件的激发者为参数,自动调用方法actionPerformed ()。

组件不同,激发的事件种类也不同,监视器类的种类也不同。按钮激发的事件称为action事件,相应的监视器称为action监视器。一个action监视器对象的类型为ActionListener,类要实现ActionListener接口。程序体现这些内容需要做到两点:

在类定义的首行接上代码implements ActionListener;

类内定义方法actionPerformed ()。

前面程序中的类ButtonDemo正确地做到了这两点。

每个界面元素当激发事件时,都有一个字符串与这个事件相对应,这个字符串称为action命令。用代码 e.getActionCommand()就能获取action事件参数e的命令字符串,据此,方法actionPerformed()就能知道是哪一个按钮激发的事件。在默认情况下,按钮的命令字符串就是按钮上的文字。如有必要可以用方法 setActionCommand()为界面组件设置命令字符串。

以上就是关于“Java编程开发之标签、按钮和按钮事件简介”方面的介绍,如果你正在学习这方面知识,请给本编知识点提供建议,以便大家更好的学习,同时你也可以加入我们,成为本站的小编,将您的才华通过网站展现给后来者。

顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
------分隔线----------------------------
Java教程
1、Java 概述
1.1 Java语言概述
1.2 Java虚拟机以及跨平台原理
1.3 Java的主要就业方向
1.4 Java的不同版本
1.5 Java开发环境搭建
1.6 第一个Java程序示例
1.7 Java类和对象的概念
1.8 Java类库及其组织结构
1.9 Java import
2、Java 语法基础
2.1 Java数据类型以及变量的定义
2.2 Java数据类型转换
2.3 Java运算符
2.4 Java流程控制
2.5 Java数组的定义和使用
2.6 Java字符串(String)
2.7 Java StringBuffer与StringBuider
2.8 强调一下编程风格
3、Java 类与对象
3.1 Java类的定义及其实例化
3.2 Java访问修饰符
3.3 Java变量的作用域
3.4 Java this关键字详解
3.5 Java方法重载
3.6 Java类的基本运行顺序
3.7 Java包装类、拆箱和装箱详解
3.8 再谈Java包
3.9 源文件的声明规则
4、Java 继承和多态
4.1 继承的概念与实现
4.2 Java super关键字
4.3 继承中的方法的覆盖和重载
4.4 多态和动态绑定
4.5 instanceof 运算符
4.6 多态对象的类型转换
4.7 Java static关键字
4.8 Java final关键字
4.9 Java Object类
5、面向对象高级特性
5.1 Java内部类及其实例化
5.2 内部类的分类
5.3 抽象类的概念和使用
5.4 接口的概念和使用
5.5 接口和抽象类的区别
5.6 Java 泛型
5.7 泛型通配符和类型参数的范围
6、异常处理
6.1 异常处理基础
6.2 异常类型Java语言中常见的异常类型有哪些
6.3 未被捕获的异常
6.4 try和catch的使用
6.5 多重catch语句的使用
6.6 try语句的嵌套
6.7 throw:异常的抛出
6.8 throws子句
6.9 finally块
6.10 Java的内置异常
6.11 创建自己的异常子类
6.12 断言
7、线程编程
7.1 线程的概念
7.2 Java线程模型
7.3 主线程
7.4 创建线程
7.5 创建多线程
7.6 isAlive()和join()的使用
7.7 线程优先级
7.8 线程同步
7.9 线程间通信
7.10 线程死锁
7.11 线程的挂起、恢复和终止
8、输入输出(IO)操作
8.1 输入输出基本概念
8.2 面向字符的输入流
8.3 面向字符的输出流
8.4 面向字节的输入输出流
8.5 面向字节流的应用
8.6 文件与目录管理
8.7 文件的随机读写
8.8 文件的压缩处理
9、常用类库、向量与哈希
9.1 Java基础类库
9.2 Object类
9.3 Java语言包(java.lang)简介
9.4 日期和时间类
9.5 向量及其应用
9.6 哈希表及其应用
10、图形界面(GUI)设计
10.1 图形界面设计基础
10.2 框架窗口
10.3 标签、按钮和按钮事件
10.4 面板
10.5 布局设计
10.6 文本框和文本区
10.7 文本框和文本区的输入输出
10.8 选择框和单选按钮
10.9 列表和组合框
10.10 菜单
10.11 对话框
10.12 滚动条
10.13 鼠标事件
10.14 键盘事件
11、图形、图像与多媒体
11.1 绘图基础
11.2 设置字型和颜色
11.3 绘图模式
11.4 Graphics类的绘图方法
11.5 Graphics2D类的绘图方法
11.6 图像处理基础
11.7 图像缓冲技术
11.8 多媒体基础
12、网络与数据库编程
12.1 IP地址和InetAddress类
12.2 统一资源定位符
12.3 套接字(Socket)
12.4 数据库连接
12.5 几个重要的类和接口
12.6 数据库查询
12.7 数据库更新
12.8 插入记录
12.9 修改记录
12.10 删除记录