java写一个Swing小程序:《我的时钟》

来源:互联网 发布:js后退页面同时刷新 编辑:程序博客网 时间:2024/05/01 10:21

今天自己随手写一个最简单的时钟程序,用来给第一次接触java的学生一个简单的例子。

有几点要求:

  1. 代码量要少于100行。
  2. 逻辑性简单。
  3. 结构清晰。
  4. 使用awt,使用swing

我的时钟代码指导

Jack老师

1. 初始化

1. new 当前类。

2. 创建当前类的构造方法。

1. 第一步:初始化

1. 设置窗体的坐标和大小。       setBounds(420, 220, 320, 180);

2. 设置窗体的标题Title。          

3. 设置窗体不能改变大小。       setResizable(false);

4. 设置背景你想要的颜色。       getContentPane().setBackground(Color.WHITE);

5. 设置窗体是否隐藏显示。

6. 设置窗体关闭时退出程序。

2. 第三步 日期  显示

1. 设置字体格式。                     SimpleDateFormat sdf1= new SimpleDateFormat("YYYY-MM-dd");

2. 创建第二个JLabel对象。      final JLabel l1 = new JLabel();

3. 设置JLabel文字居中显示。  l1.setHorizontalAlignment(0);

4. 设置JLabel文字样式。          l1.setFont(new Font("宋体",Font.PLAIN,52);

5. 给定l1的文字信息。               l1.setText(sdf1.format(new Date()));

6. 窗体中添加该JLabel。          getContentPane().add(l1);

3. 第二步 时钟 显示

1. 创建JLabel控件                      final Jabel  l2 = new JLabel();

2. 设置JLabel文字居中显示。  l2.setHorizontalAlignment(0);

3. 设置JLabel文字样式。          l2.setFont(new Font("宋体",Font.PLAIN,52);

4. 窗体中添加该JLabel。          getContentPane().add(l2);

5. 设置l2显示为false。              l2.setVisible(false);

6. 创建简单字体格式。             SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm:ss");

7. 创建While循环。                   while(true){    ...    }

8. 设置JLabel中显示的字。     l2.setTest(sdf2.format(new Date()));   //当前时间

4. 第四步 日历&时钟 切换显示

1. 创建一个按钮button。           final JButton button = new JButton();

2. 给按钮设置背景颜色。         button.setBackground(Color.WHITE);

3. 给按钮文字设置文字。         button.setText("switch");

4. 将按钮添加到面板。             getContentPane().add(button, BorderLayout.SOUTH);

5. 给按钮添加监听事件。

<span style="font-size:18px;">button.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {                if(l2.isVisible()){                    l2.setVisible(false);                    l1.setVisible(true);                    getContentPane().add(l1);                }else{                    l2.setVisible(true);                    l1.setVisible(false);                }            }        });</span>


0 0