浅谈javaSE GUI (Action事件)
对自己定义的类规范化一下,事件和图形化组件分离出来
定义一个类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();
}
}



阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




