Java添加事件监听的四种方法代码实例
2014-09-22 09:42
866 查看
Java添加事件的几种方式(转载了codebrother的文章,做了稍微的改动):
/** * Java事件监听处理――自身类实现ActionListener接口,作为事件监听器 * * @author codebrother */ class EventListener1 extends JFrame implements ActionListener { private JButton btBlue, btDialog; public EventListener1() { setTitle("Java GUI 事件监听处理"); setBounds(100, 100, 500, 350); setLayout(new FlowLayout()); btBlue = new JButton("蓝色"); btDialog = new JButton("弹窗"); // 将按钮添加事件监听器 btBlue.addActionListener(this); btDialog.addActionListener(this); add(btBlue); add(btDialog); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } // ***************************事件处理*************************** @Override public void actionPerformed(ActionEvent e) { if (e.getSource() == btBlue) { Container c = getContentPane(); c.setBackground(Color.BLUE); } else if (e.getSource() == btDialog) { JDialog dialog = new JDialog(); dialog.setBounds(300, 200, 400, 300); dialog.setVisible(true); } } } /** * Java事件监听处理――内部类处理 * * @author codebrother */ class EventListener3 extends JFrame { private JButton btBlue, btDialog; // 构造方法 public EventListener3() { setTitle("Java GUI 事件监听处理"); setBounds(100, 100, 500, 350); setLayout(new FlowLayout()); btBlue = new JButton("蓝色"); btDialog = new JButton("弹窗"); // 添加事件监听器对象(面向对象思想) btBlue.addActionListener(new ColorEventListener()); btDialog.addActionListener(new DialogEventListener()); add(btBlue); add(btDialog); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } // 内部类ColorEventListener,实现ActionListener接口 class ColorEventListener implements ActionListener { @Override public void actionPerformed(ActionEvent e) { Container c = getContentPane(); c.setBackground(Color.BLUE); } } // 内部类DialogEventListener,实现ActionListener接口 class DialogEventListener implements ActionListener { @Override public void actionPerformed(ActionEvent e) { JDialog dialog = new JDialog(); dialog.setBounds(300, 200, 400, 300); dialog.setVisible(true); } } } /** * Java事件监听处理――匿名内部类处理 * * @author codebrother */ class EventListener2 extends JFrame { private JButton btBlue, btDialog; public EventListener2() { setTitle("Java GUI 事件监听处理"); setBounds(100, 100, 500, 350); setLayout(new FlowLayout()); btBlue = new JButton("蓝色"); btDialog = new JButton("弹窗"); // 添加事件监听器(此处即为匿名类) btBlue.addActionListener(new ActionListener() { // 事件处理 @Override public void actionPerformed(ActionEvent e) { Container c = getContentPane(); c.setBackground(Color.BLUE); } }); // 并添加事件监听器 btDialog.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { JDialog dialog = new JDialog(); dialog.setBounds(300, 200, 400, 300); dialog.setVisible(true); } }); add(btBlue); add(btDialog); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } /** * Java事件监听处理――外部类处理 * * @author codebrother */ class EventListener4 extends JFrame { private JButton btBlue, btDialog; public EventListener4() { setTitle("Java GUI 事件监听处理"); setBounds(100, 100, 500, 350); setLayout(new FlowLayout()); btBlue = new JButton("蓝色"); btDialog = new JButton("弹窗"); // 将按钮添加事件监听器 btBlue.addActionListener(new ColorEventListener(this)); btDialog.addActionListener(new DialogEventListener()); add(btBlue); add(btDialog); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } // 外部类ColorEventListener,实现ActionListener接口 class ColorEventListener implements ActionListener { private EventListener4 el; ColorEventListener(EventListener4 el) { this.el = el; } @Override public void actionPerformed(ActionEvent e) { Container c = el.getContentPane(); c.setBackground(Color.BLUE); } } // 外部类DialogEventListener,实现ActionListener接口 class DialogEventListener implements ActionListener { @Override public void actionPerformed(ActionEvent e) { JDialog dialog = new JDialog(); dialog.setBounds(300, 200, 400, 300); dialog.setVisible(true); } } public class ActionListenerTest { public static void main(String args[]) { new EventListener2(); } }
您可能感兴趣的文章:
相关文章推荐
- Java添加事件监听的四种方法代码实例
- java基础学习——Java添加事件监听的四种方法代码实例
- Java添加事件监听的四种方法代码实例
- Java添加事件监听的四种方法代码实例
- Java添加事件监听的四种方法代码实例
- Java添加事件监听的四种方法代码实例
- Java添加事件监听的四种方法代码实例
- Java添加事件监听的方法及代码实例
- 关于JAVA中事件分发和监听机制实现的代码实例-绝对原创实用
- JAVA用户自定义事件监听实例代码
- 关于JAVA中事件分发和监听机制实现的代码实例-绝对原创实用
- Java图形界面事件监听处理之四种方法
- Java图形界面事件监听处理之四种方法
- Android 实现监听的四种方法详解实例代码
- Java图形界面事件监听处理之四种方法
- Android studio button 按钮 四种绑定事件的方法【实例代码】
- Java遍历Properties的所有的元素,四种方法详细总结的代码实例
- 安卓给按钮添加监听事件的四种方法2.
- java基础学习总结——关于Java中事件分发和监听机制实现的代码实例
- Android-NDK开发之基础--Android JNI实例代码(一)-- 在JNI中执行Java方法--C/C++调用Java