⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 weekdayframe.java~22~

📁 实用的java习题,初学者可用
💻 JAVA~22~
字号:
package weekday;

import java.awt.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import java.util.Calendar;

/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2007</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class WeekDayFrame
    extends JFrame {
  JPanel contentPane;
  JComboBox cboYear = new JComboBox();
  JLabel lblYear = new JLabel();
  JComboBox cboMonth = new JComboBox();
  JLabel lblMonth = new JLabel();
  JComboBox cboDay = new JComboBox();
  JLabel lblDay = new JLabel();
  JButton btnCal = new JButton();
  JLabel lblMessage = new JLabel();
  public WeekDayFrame() {
    try {
      setDefaultCloseOperation(EXIT_ON_CLOSE);
      jbInit();
    }
    catch (Exception exception) {
      exception.printStackTrace();
    }
  }

  /**
   * Component initialization.
   *
   * @throws java.lang.Exception
   */

  //设置年
  private void setYear(JComboBox obj) {
    for (int i = 1990; i <= 2050; i++) {
      obj.addItem(new Integer(i));
    }
  }

  //设置月
  private void setMonth(JComboBox obj) {
    for (int i = 1; i <= 12; i++) {
      obj.addItem(new Integer(i));
    }
  }

  //设置日
  private void setDay(JComboBox obj) {
    for (int i = 1; i <= 31; i++) {
      obj.addItem(new Integer(i));
    }
  }

  private void setInit() {
    Calendar c = Calendar.getInstance();
    cboYear.setSelectedItem(new Integer(c.get(Calendar.YEAR)));
    cboMonth.setSelectedItem(new Integer(c.get(Calendar.MONTH) + 1));
    cboDay.setSelectedItem(new Integer(c.get(Calendar.DAY_OF_MONTH)));
  }

  private void jbInit() throws Exception {
    contentPane = (JPanel) getContentPane();
    contentPane.setLayout(null);
    setSize(new Dimension(419, 294));
    setTitle("计算星期");
    cboYear.setFont(new java.awt.Font("Dialog", Font.PLAIN, 16));
    cboYear.setBounds(new Rectangle(30, 44, 89, 36));
    //设置年
    setYear(cboYear);

    lblYear.setFont(new java.awt.Font("Dialog", Font.PLAIN, 16));
    lblYear.setText("年");
    lblYear.setBounds(new Rectangle(123, 44, 28, 20));
    cboMonth.setFont(new java.awt.Font("Dialog", Font.PLAIN, 16));
    cboMonth.setBounds(new Rectangle(158, 44, 61, 36));
    //设置月
    setMonth(cboMonth);

    lblMonth.setFont(new java.awt.Font("Dialog", Font.PLAIN, 16));
    lblMonth.setText("月");
    lblMonth.setBounds(new Rectangle(227, 44, 23, 20));
    cboDay.setFont(new java.awt.Font("Dialog", Font.PLAIN, 16));
    cboDay.setBounds(new Rectangle(272, 44, 56, 36));
    //设置日
    setDay(cboDay);

    lblDay.setFont(new java.awt.Font("Dialog", Font.PLAIN, 16));
    lblDay.setText("日");
    lblDay.setBounds(new Rectangle(341, 44, 20, 20));
    btnCal.setBounds(new Rectangle(242, 98, 115, 29));
    btnCal.setText("计算星期");
    btnCal.addActionListener(new WeekDayFrame_btnCal_actionAdapter(this));
    lblMessage.setFont(new java.awt.Font("Dialog", Font.PLAIN, 20));
    lblMessage.setHorizontalAlignment(SwingConstants.CENTER);
    lblMessage.setText("");
    lblMessage.setBounds(new Rectangle(27, 166, 347, 33));
    //设置初始值
    setInit();

    contentPane.add(cboMonth);
    contentPane.add(cboYear);
    contentPane.add(lblYear);
    contentPane.add(lblMonth);
    contentPane.add(cboDay);
    contentPane.add(lblDay);
    contentPane.add(btnCal);
    contentPane.add(lblMessage);
  }

  public void btnCal_actionPerformed(ActionEvent e) {
    //计算星期
    String year = cboYear.getSelectedItem().toString();
    String month = cboMonth.getSelectedItem().toString();
    String day = cboDay.getSelectedItem().toString();

    Calendar c = Calendar.getInstance();
    c.set( (new Integer(year)).intValue(), (new Integer(month)).intValue() - 1,
          (new Integer(day)).intValue());
    cboYear.setSelectedItem(new Integer(c.get(Calendar.YEAR)));
    cboMonth.setSelectedItem(new Integer(c.get(Calendar.MONTH) + 1));
    cboDay.setSelectedItem(new Integer(c.get(Calendar.DAY_OF_MONTH)));

    int weekday = c.get(Calendar.DAY_OF_WEEK);
    String wd = "星期";
    switch (weekday) {
      case 2:
        wd += "一";
        break;
      case 3:
        wd += "二";
        break;
      case 4:
        wd += "三";
        break;
      case 5:
        wd += "四";
        break;
      case 6:
        wd += "五";
        break;
      case 7:
        wd += "六";
        break;
      case 1:
        wd += "天";
        break;
    }
    String message = c.get(Calendar.YEAR) + "年" + (c.get(Calendar.MONTH) + 1) +
        "月" + c.get(Calendar.DAY_OF_MONTH) + "日" + wd;
    lblMessage.setText(message);
  }
}

class WeekDayFrame_btnCal_actionAdapter
    implements ActionListener {
  private WeekDayFrame adaptee;
  WeekDayFrame_btnCal_actionAdapter(WeekDayFrame adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.btnCal_actionPerformed(e);
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -