Java Swing界面编程(22)---事件处理:动作事件及监听处理-阿里云开发者社区

开发者社区> 技术mix呢> 正文

Java Swing界面编程(22)---事件处理:动作事件及监听处理

简介:
+关注继续查看

要想让一个button变得有意义,就必须使用事件处理。在swing的事件处理中。能够使用ActionListener接口处理button的动作事件。

package com.beyole.util;

import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

class ActionHandle {
	private JFrame frame = new JFrame("Crystal");// 声明一个窗口对象
	private JButton button = new JButton("显示");
	private JLabel label = new JLabel();
	private JTextField text = new JTextField(10);
	private JPanel panel = new JPanel();

	public ActionHandle() {
		Font font = new Font("Serief", Font.ITALIC + Font.BOLD, 28);// 设置字体
		label.setFont(font);// 设置标签字体
		label.setText("等待用户输入信息");// 设置默认显示文字
		button.addActionListener(new ActionListener() { // 採用内部匿名类

			@Override
			public void actionPerformed(ActionEvent e) {
				if (e.getSource() == button) {// 推断触发源是否为按钮
					label.setText(text.getText());// 将文本文字设置到标签
				}
			}
		});// 增加动作监听
		frame.addWindowListener(new WindowAdapter() {// 增加窗口监听
			public void windowClosing(WindowEvent arg0) {
				System.exit(1);// 系统退出
			}
		});
		frame.setLayout(new GridLayout(2, 1));// 设置窗口布局
		panel.setLayout(new GridLayout(1, 2));// 设置面板布局
		panel.add(text);// 将文本域增加到面板
		panel.add(button);// 将按钮增加到面板
		frame.add(panel);// 将面板增加到窗口
		frame.add(label);// 将标签增加到窗口
		frame.pack();// 依据组件自己主动调整大小
		frame.setVisible(true);// 显示窗口
	}
}

public class MyActionEventDemo {
	public static void main(String[] args) {
		new ActionHandle();
	}
}

程序截图:






本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/5156078.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【转】]监听SMS消息/编程实现短信拦截
当设备接收到一条新的SMS消息时,就会广播一个包含了android.provider.Telephony.SMS_RECEIVED动作的Intent。注意,这个动作是一个字符串值,SDK 1.0不再包含对这个字符串的引用,因此,在你的应用程序中,你需要显式的指定它。
769 0
WinForm中如何判断关闭事件来源于用户点击右上角的“关闭”按钮
在C#的WinForm程序中,有的时候需要判定关闭请求从哪里发出来的。比如是用户点击了右上角的“关闭”按钮,还是调用了WinForm.Close()方法。最典型的是要知道点击右上角的“关闭”按钮发出的事件。
787 0
[推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼、百战不殆)
原文:[推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼、百战不殆) [推荐]ORACLE PL/SQL编程之五: 异常错误处理(知已知彼、百战不殆)       继上三篇:ORACLE PL/SQL编程之八:把触发器说透               ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!)               [推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到)  得到了大家的强力支持与建议,万分感谢。
758 0
javaWeb初识 ServletContext全局对象,过滤器,监听器
ServletContext全局对象: import javax.servlet.ServletConfig; import javax.servlet.ServletContext; import javax.
697 0
Windows Phone 8初学者开发—第5部分:布局和事件基础
原文 Windows Phone 8初学者开发—第5部分:布局和事件基础 原文地址: http://channel9.msdn.com/Series/Windows-Phone-8-Development-for-Absolute-Beginners/Part-5-Basics-of-Layout-and-Events 系列地址:http://channel9.
702 0
.NET数据库编程求索之路--7.使用ADO.NET实现(工厂模式-实现多数据库切换)(1)
7.使用ADO.NET实现(工厂模式-实现多数据库切换)(1)     7.1 解决方案框架 解决方案(.sln)包含以下几个项目: (1)类库项目HomeShop.DbUtility,数据访问实用工具; (2)类库项目HomeShop.
744 0
.NET数据库编程求索之路--7.使用ADO.NET实现(工厂模式-实现多数据库切换)(2)
7.使用ADO.NET实现(工厂模式-实现多数据库切换)(2)     7.3 数据访问层工厂HomeShop.DALFactory      1 using System; 2 using System.
891 0
.NET数据库编程求索之路--7.使用ADO.NET实现(工厂模式-实现多数据库切换)(4)
7.使用ADO.NET实现(工厂模式-实现多数据库切换)(4) 7.7 业务逻辑层HomeShop.BLL OrderBiz.cs View Code  1 using System; 2 using System.
776 0
+关注
2969
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载