• JAVA的Swing实现点击事件


    MyFrame.java

    package swing;
    
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    public class MyFrame extends JFrame {
        JLabel timeLabel= new JLabel("00:00:00");
        JButton button=new JButton("显示时间");
    
        public MyFrame(String title){
            super(title);
            //内容面板
            Container contentPane=getContentPane();
            contentPane.setLayout(new FlowLayout());
    
            //向内容面板添加控件
            contentPane.add(button);
            contentPane.add(timeLabel);
            //创造监听器对象
            //把监听器注册给按钮
            button.addActionListener(new ActionListener(){
                @Override
                public void actionPerformed(ActionEvent e) {
                    //当按钮被点击时,Swing框架会调用监听器的actionPerformed()方法
                    System.out.println("按钮被点击....");
                    showTime();
                }
            });
    
        }
        public void showTime(){
            SimpleDateFormat sdf=new SimpleDateFormat("HH:mm:ss");
            String timestr=sdf.format(new Date());
            timeLabel.setText(timestr);
            System.out.println("时间已更新");
        }
    }
    package swing;
    
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    public class MyFrame extends JFrame {
        JLabel timeLabel= new JLabel("00:00:00");
        JButton button=new JButton("显示时间");
    
        public MyFrame(String title){
            super(title);
            //内容面板
            Container contentPane=getContentPane();
            contentPane.setLayout(new FlowLayout());
    
            //向内容面板添加控件
            contentPane.add(button);
            contentPane.add(timeLabel);
            //创造监听器对象
            //把监听器注册给按钮
            button.addActionListener(new ActionListener(){
                @Override
                public void actionPerformed(ActionEvent e) {
                    //当按钮被点击时,Swing框架会调用监听器的actionPerformed()方法
                    System.out.println("按钮被点击....");
                    showTime();
                }
            });
    
        }
        public void showTime(){
            SimpleDateFormat sdf=new SimpleDateFormat("HH:mm:ss");
            String timestr=sdf.format(new Date());
            timeLabel.setText(timestr);
            System.out.println("时间已更新");
        }
    }
    SwingDemo.java
    package swing;
    
    import javax.swing.*;
    
    public class SwingDemo {
        private static void createGUI(){
    
            //JFrame指一个窗口,构造方法的参数为窗口标题
            MyFrame frame=new MyFrame("swing demo");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    
            //设置窗口的其它参数,如窗口大小
            frame.setSize(400,300);
    
            //显示窗口
            frame.setVisible(true);
        }
    
        public static void main(String[] args) {
            javax.swing.SwingUtilities.invokeLater(new Runnable() {
                @Override
                public void run() {
                    createGUI();
                }
            });
        }
    }
  • 相关阅读:
    集合
    WPF自定义控件--模拟手机密码输入控件,在输入时显示最后一个输入密码字符
    配置VS不生成XML和PDB文件
    Wlan常见命令(可以查看连接密码)
    云栖社区用机器人爬CSDN的文章?
    Marshal.PtrToStringAnsi中文乱码
    各种手工DIY
    yii2修改默认控制器
    3D模型网站分享
    SemanticZoom配合GridView组件的使用关键点
  • 原文地址:https://www.cnblogs.com/yeyueweiliang/p/13644033.html
Copyright © 2020-2023  润新知