zoukankan      html  css  js  c++  java
  • 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();
    	}
    }
    

    程序截图:

  • 相关阅读:
    MyEclipse数据库反向生成实体类
    Struts2部分标签
    如何使用 Jmeter 发送 Json 请求
    [转]Perfmon
    Jmeter 施压 SQL server数据库的时候,如何设置?
    Tomcat 安装之后,双击Tomcat.exe,无法运行成功,怎么办?
    Jmeter 在什么情况下定义多个thread group?
    Watir RAutomation VS AutoIt to deal with popup
    RAutomation 在 Watir中的使用
    AutoIt:如何处理应用程序端口被占用的情况
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/5156078.html
Copyright © 2011-2022 走看看