要想让一个按钮变得有意义,就必须使用事件处理。在swing的事件处理中,可以使用ActionListener接口处理按钮的动作事件。
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(); } }
程序截图:
Java Swing界面编程(22)---事件处理:动作事件及监听处理,布布扣,bubuko.com
时间: 2024-10-10 05:51:04