初学java之事件响应(结合接口来设置在同一个界面上!)
时间:2022-05-05
本文章向大家介绍初学java之事件响应(结合接口来设置在同一个界面上!),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1 package wahaha;
2
3 public class test_1 {
4 public static void main( String args[] )
5 {
6 WindowActionEvent win = new WindowActionEvent();
7 PoliceListen police = new PoliceListen(); //创建监视器
8 win.setMyCommandListener(police);
9 win.setBounds(100, 100, 460, 360);
10 win.setTitle("处理ACtionEvent事件");
11 }
12 }
1 package wahaha;
2
3 import javax.swing.*;
4 import java.awt.*;
5
6 public class WindowActionEvent extends JFrame
7 {
8
9 JTextField inputText ;
10 JTextArea testshow ;
11 JButton button ;
12 MyCommandListener listenner ;
13
14 public WindowActionEvent()
15 {
16 init();
17 setVisible(true);
18 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
19 }
20
21 void init()
22 {
23 setLayout(new FlowLayout());
24 inputText =new JTextField(10);
25 button =new JButton("确定");
26 testshow = new JTextArea(9,30);
27 add(inputText);
28 add(button);
29 add(new JScrollPane(testshow));
30 }
31
32 void setMyCommandListener(MyCommandListener listener)
33 {
34 this.listenner = listener ;
35 listener.setJTextArea(testshow);
36 listener.setJTextField(inputText);
37 //inputText是事件源,listener是监视器
38 button.addActionListener(listener) ;
39 //button是事件源 ,listener是监视器
40 }
41 }
1 package wahaha;
2
3 //设置一个接口 implements/interface/extends
4
5 import javax.swing.* ;
6 import java.awt.event.* ;
7
8 public interface MyCommandListener extends ActionListener //子接口多给出了2个方法
9 {
10 public void setJTextField(JTextField text);
11 public void setJTextArea(JTextArea area);
12 }
1
2 package wahaha;
3
4 import javax.swing.*;
5 import java.awt.event.*;
6
7 public class PoliceListen implements MyCommandListener
8 {
9 JTextField textInput ;
10 JTextArea textshow ;
11
12 public void setJTextField( JTextField text )
13 {
14 textInput = text ;
15 }
16
17 public void setJTextArea(JTextArea area)
18 {
19 textshow = area;
20 }
21
22 public void actionPerformed( ActionEvent e)
23 {
24 String str=textInput.getText();
25 textshow.append(str+"的长度:"+str.length()+"n");
26 }
27 }
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 使用RecyclerView实现水平列表
- android实现记住用户名和密码以及自动登录
- Android碎片fragment实现静态加载的实例代码
- android异步消息机制 源码层面彻底解析(1)
- /undefinedcss/modules/layer/default/layer.css?v=3.1.1找不到的问题
- Android实现渐变启动页和带有指示器的引导页
- the input device is not a TTY. If you are using mintty, try prefixing the comma
- 【STM32F407】第13章 RL-TCPnet V7.X之创建多个TCP客户端
- RecyclerView实现列表倒计时
- wsl设置默认账户为root(ubuntu18.04)
- LeetCode No.14 最长公共前缀
- android异步消息机制 从源码层面解析(2)
- beego解决跨域问题:options请求、axios post请求跨域问题
- Android ListView列表实现倒计时
- [-Flutter 自组篇-] 蛛网图+绘制+动画实践