对自己定义的类规范化一下,事件和图形化组件分离出来

定义一个类FrameDemo

定义成员属性Frame frame

定义成员属性Botton

定义构造方法FrameDemo()

定义初始化方法init()

初始化方法中,new出来Frame(),参数:String的窗体名称

调用Frame对象的setBounds()方法,参数:x,y,width,height

调用Frame对象的setLayout()方法,参数:FlowLayout对象

获取Button对象,new出来,构造参数:String的按钮文本

调用Frame对象的add()方法,参数:Button对象

调用Frame对象的setVisible()方法,参数:Boolean的true

定义事件方法myEvent()

调用Frame对象的addWindowListener()方法,参数:WindowListener对象,WindowListener是个接口,里面有七个方法要实现,找实现子类WindowAdapter,匿名内部类重写windowClosing()方法,传递进来参数:WindowEvent对象

调用Button对象的addActionListener()方法,参数:ActionListener对象,这个类是个接口,因此采用匿名内部类实现这个接口,实现方法actionPerformed()方法,传递进来参数:ActionEvent对象

import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; public class FrameDemo {
private Frame frame;
private Button button;
public FrameDemo() {
init();
}
/**
* 初始化
*/
public void init(){
frame=new Frame("测试窗体");
frame.setBounds(300, 200, 200, 200);
frame.setLayout(new FlowLayout()); button=new Button("退出");
frame.add(button);
frame.setVisible(true); addEventAction();
}
/**
* 添加事件
*/
public void addEventAction(){
//按钮退出
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
}
/**
* @param args
*/
public static void main(String[] args) {
new FrameDemo();
} }

[javaSE] GUI(Action事件)的更多相关文章

  1. [javaSE] GUI(事件监听机制)

    外部动作——>事件源(组件)——>事件对象——>监听器 获取Frame对象,与上节一样 调用Frame对象的addWindowListener()方法,参数:WindowListen ...

  2. JAVA之旅(三十一)——JAVA的图形化界面,GUI布局,Frame,GUI事件监听机制,Action事件,鼠标事件

    JAVA之旅(三十一)--JAVA的图形化界面,GUI布局,Frame,GUI事件监听机制,Action事件,鼠标事件 有段时间没有更新JAVA了,我们今天来说一下JAVA中的图形化界面,也就是GUI ...

  3. [javaSE] GUI(鼠标事件)

    调用Button对象的addMouseListener方法,参数:MouseListener对象,这个类是个接口,需要实现以下方法 mouseClicked mousePressed mouseRel ...

  4. Unity3D研究院编辑器之Editor的GUI的事件拦截

    OnGUI是Unity上一个时代的UI系统,而现在运行时的UI系统已经被UGUI取代,但是Editor的UI还是在用老的这一套GUI系统.比如unity编辑器里的所有窗口,布局,按钮,拖动条.滚动等等 ...

  5. Jmeter报错之jmeter.gui.action.ActionRouter: Error processing gui.action.Start@1b7c473a java.lang.ArrayIndexOutOfBoundsException

    一个使用了很久的Jmeter脚本,运行时Jmeter的UI界面上点击绿色按钮后,完全无反应,只有log报错,如下: 2017/06/28 14:29:23 ERROR - jmeter.gui.act ...

  6. [javaSE] GUI(对话框Dialog)

    对话框不能单独存在,依赖于窗体,有显示标题,有模式 获取Dialog对象,new出来,构造参数:Frame对象,String的标题,模式 窗体内部的内容,Label对象,Button对象,调用Dial ...

  7. [javaSE] GUI(练习-列出指定目录内容)

    获取Frame对象 获取TextField对象 获取TextArea对象 获取Button对象 调用Frame对象的add()方法,添加进去 调用TextField对象的getText()方法,可以获 ...

  8. Android 广播大全 Intent Action 事件详解

    Android 广播大全 Intent Action 事件详解 投稿:mrr 字体:[增加 减小] 类型:转载 时间:2015-10-20我要评论 这篇文章主要给大家介绍Android 广播大全 In ...

  9. 6.JAVA之GUI编程Action事件

    功能:单击一个按钮实现关闭窗口: import java.awt.*; import java.awt.event.*; public class StudyAction { // 定义该图形所需的组 ...

随机推荐

  1. java 实验4 异常

    异常(实际使用直接try-catch) 1.常见系统异常 异常 异常的解释 ClassNotFoundException 未找到要装载的类 ArrayIndexOutOfBoundsException ...

  2. Java中Io类-File类的构造方法

    package com.hxzy.IOSer;import java.io.*;public class Demo02 { public static void main(String[] args) ...

  3. Java多线程原理及Thread类的使用

    一.进程与线程的区别 1.进程是应用程序在内存总分配的空间.(正在运行中的程序) 2.线程是进程中负责程序执行的执行单元.执行路径. 3.一个进程中至少有一个线程在负责进程的运行. 4.一个进程中有多 ...

  4. vscode 本地调试nodejs

    1.首先通过node-inspect插件可以debug   nodejs ,先起nodejs服务,再启用node-inpector服务 安装调试器 npm install -g node-inspec ...

  5. HDU-1260-Tickets(线性DP,DP入门)

    Tickets Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Su ...

  6. node.js常用命令

    安装node 验证是否安装node $node -v $npm -v npm node package manager , Node 的包管理器 安装 包 # 安装到当前目录 $ npm instal ...

  7. asp.net图片上传代码

    前端: <form action="/ImageUpload.ashx" method="post" enctype="multipart/fo ...

  8. jQuery 事件注册

    重点事件注册.on() <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset= ...

  9. 再也不怕aop的原理了

    1 aop是什么 java的核心思想是面向对象,aop是面向切面编程.是对面向对象的一个补充,简单通俗的理解下aop,假设我们上楼梯,我的目标是三楼,我直接朝我的三楼直接过去,但是我可以在二楼的时候去 ...

  10. linux centOS 7 GUI安装

    centOS 7 GUI 图形用户界面(Graphical User Interface 克隆clone Windows中安装xshell和xftp传输软件 https://blog.csdn.net ...