激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 日歷顯示讀出輸入的年月的java代碼

日歷顯示讀出輸入的年月的java代碼

2019-10-23 14:16java代碼網 Java教程

這篇文章主要介紹了日歷顯示讀出輸入的年月的java代碼,有需要的朋友可以參考一下

代碼如下:


import java.awt.*;
import java.awt.event.*;
import java.util.Calendar;

 

import javax.swing.JOptionPane;

class CalendarBean {  //定義一個日歷
 String day[]; //天數數組
 int year = 2011, month = 9; //給定一個初始年月

 public void setYear(int year) { 
  this.year = year;
 }

 public int getYear() {
  return year;
 }

 public void setMonth(int month) {
  this.month = month;
 }

 public int getMonth() {
  return month;
 }

 public String[] getCalendar() { //獲得日歷
  String a[] = new String[42]; //定義一個以字符串數組
  Calendar 日歷 = Calendar.getInstance(); 
  日歷.set(year, month - 1, 1);
  int 星期幾 = 日歷.get(Calendar.DAY_OF_WEEK) - 1;
  int day = 0;
  if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
   day = 31;
  }
  if (month == 4 || month == 6 || month == 9 || month == 11) {
   day = 30;
  }
  if (month == 2) {
   if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) {
    day = 29;
   } else {
    day = 28;
   }
  }
  for (int i = 星期幾, n = 1; i < 星期幾 + day; i++) {
   a[i] = String.valueOf(n);
   n++;
  }
  return a;
 }
}

class CalendarFrame extends Frame implements ActionListener {
 Label labelDay[] = new Label[42]; //用來輸出日歷的天的數組
 Button titleName[] = new Button[7]; //周一到周天的按鍵
 String name[] = { "日", "一", "二", "三", "四", "五", "六" };
 TextField text1, text2; //定義輸入的年份和月份
 Button nextMonth, previousMonth, Enter; //下個月,上個月,確定
 Label lab1, lab2, lab3; //幾個文本類型的字符串
 int year = 2012, month = 9;
 CalendarBean calendar; //頂一個量
 Label showMessage = new Label("", Label.CENTER); //   定義一個用于顯示 當前年月的label 表明,標簽上應為中心。

 public CalendarFrame() {    //窗體類
  Panel pCenter = new Panel();  //鑲嵌
  pCenter.setLayout(new GridLayout(7, 7));
  for (int i = 0; i < 7; i++) {      //給周日到周六的button添加顯示文本
   titleName[i] = new Button(name[i]);
   pCenter.add(titleName[i]);
  }
  for (int i = 0; i < 42; i++) {      
   labelDay[i] = new Label("", Label.CENTER);
   pCenter.add(labelDay[i]);
  }
  calendar = new CalendarBean();
  calendar.setYear(year);     //設定年
  calendar.setMonth(month);
  String day[] = calendar.getCalendar();  //設定天
  for (int i = 0; i < 42; i++) {     //給日歷位置循環添加顯示日歷天
   labelDay[i].setText(day[i]);
  }
  lab1 = new Label("請輸入日期");  //調用一個方法    new一個對象 
  lab2 = new Label("年份");
  lab3 = new Label("月份");
  Enter = new Button("確定");
  text1 = new TextField(10);
  text2 = new TextField(5);
  nextMonth = new Button("下月");
  previousMonth = new Button("上月");
  Enter.addActionListener(this);  //添加指定的動作偵聽器
  nextMonth.addActionListener(this);
  previousMonth.addActionListener(this);
  Panel pNorth = new Panel(), pSouth = new Panel();
  pNorth.add(lab1);
  pNorth.add(lab2);
  pNorth.add(text1);
  pNorth.add(lab3);
  pNorth.add(text2);
  pNorth.add(Enter);
  pNorth.add(previousMonth);
  pNorth.add(nextMonth);
  pSouth.add(showMessage);
  showMessage.setText("日歷:" + calendar.getYear() + "年" + calendar.getMonth() + "月");
  ScrollPane scrollPane = new ScrollPane();  //實現單個子組件的自動水平和/或垂直滾動的容器類
  scrollPane.add(pCenter); 
  add(scrollPane, BorderLayout.CENTER);
  add(pNorth, BorderLayout.NORTH);
  add(pSouth, BorderLayout.SOUTH);
 }

 public void actionPerformed(ActionEvent e) {
  if (e.getSource() == nextMonth) { //如果獲得的操作時下個月的
   month = month + 1;
   if (month > 12)
    month = 1;
   calendar.setMonth(month);
   String day[] = calendar.getCalendar();
   for (int i = 0; i < 42; i++) {
    labelDay[i].setText(day[i]);
   }
  } else if (e.getSource() == previousMonth) {
   month = month - 1;
   if (month < 1)
    month = 12;
   calendar.setMonth(month);
   String day[] = calendar.getCalendar();
   for (int i = 0; i < 42; i++) {
    labelDay[i].setText(day[i]);
   }
  } else {
   String yea = text1.getText();
   String mon = text2.getText();
   try {
    year = Integer.parseInt(yea); //把string轉成int類型 
    month = Integer.parseInt(mon);
    if (month > 12 || month < 1 || year < 1) {  //錯誤輸入的處理
     JOptionPane.showMessageDialog(null, "請輸入正確月份或月份"); 
     return;
    } else {
     calendar.setYear(year);
     calendar.setMonth(month);
    }
    String day[] = calendar.getCalendar();
    for (int i = 0; i < 42; i++) {
     labelDay[i].setText(day[i]);
    }
   } catch (NumberFormatException ee) {
    JOptionPane.showMessageDialog(null, "請輸入正確的年份及月份");
   }
  }
  showMessage.setText("日歷:" + calendar.getYear() + "年" + calendar.getMonth() + "月");
 }

}

public class CalendarMainClass {
 public static void main(String args[]) {
  CalendarFrame frame = new CalendarFrame();
  frame.setTitle("日歷");
  frame.setBounds(300, 200, 500, 300);
  frame.setVisible(true);  //顯示窗口
  frame.validate(); //使生效
  frame.addWindowListener(new java.awt.event.WindowAdapter() {  //點擊叉號關閉frame程序
   public void windowClosing(java.awt.event.WindowEvent e) {
    System.exit(0); 
   }
  });
 }
}

 

日歷顯示讀出輸入的年月的java代碼

日歷顯示讀出輸入的年月的java代碼

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品99精品 | 久久精品欧美电影 | 欧美特级黄色 | 久久经典 | av日韩一区二区三区 | 国产亚洲精品久久 | 中国字幕av | 国产亚洲精品久久久久久久久久 | 久久免费看片 | 手机黄色小视频 | 亚洲一区第一页 | www.54271.com| 久久久久免费精品 | 亚州精品在线视频 | xnxx 日本19 | 久久久精品视频在线观看 | 一级国产免费 | 精品在线免费播放 | 成人永久免费视频 | 91高清在线| 成人国产精品一区 | 成年人观看免费视频 | 日本黄视频在线观看 | 亚洲 91| 国内精品久久久久久久久久 | 91嫩草丨国产丨精品入口 | 久久草在线视频国产 | 毛片视频免费观看 | 亚洲国产色婷婷 | 国产三级在线视频观看 | 特级西西444www大精品视频免费看 | 激情综合在线观看 | 一色视频 | 中文字幕视频在线播放 | 中文字幕精品一区久久久久 | 精品中文字幕在线播放 | 色妞视频男女视频 | 亚洲成人精品久久久 | 久章草在线视频 | 国产精品一区在线观看 | 中国老女人一级毛片视频 |