亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? testjcalendar.java

?? 一個日歷java程序
?? JAVA
字號:
import java.awt.BorderLayout; 
import java.awt.Color; 
import java.awt.Dimension; 
import java.awt.GridLayout; 
import java.awt.SystemColor; 
import java.awt.event.ActionEvent; 
import java.awt.event.KeyEvent; 
import java.awt.event.MouseEvent; 
import java.util.Calendar; 
import java.util.GregorianCalendar; 
import java.util.Locale; 
import java.util.Date; 
import java.util.StringTokenizer; 

import javax.swing.BorderFactory; 
import javax.swing.JButton; 
import javax.swing.JFrame; 
import javax.swing.JLabel; 
import javax.swing.JPanel; 
import javax.swing.JTextField; 
import javax.swing.JToggleButton; 
import javax.swing.SwingConstants; 
import javax.swing.UIManager; 

/** 
* <p>Title: Swing日歷</p> 
* <p>Description: 操作日期</p> 
* @author duxu2004 
* @version 1.0.1 
*/ 

class JCalendar extends JPanel{ 
//動態表示年月日 
private int year=0; 
private int month=0; 
private int day=0; 
//主面板 
private JPanel Main = new JPanel(); 
//日面板 
private JPanel jPanelDay = new JPanel(); 
//月面板 
private JPanel jPanelMonth = new JPanel(); 
//年的輸入位置 
private JTextField Year = new JTextField(); 
//月的輸入位置 
private JTextField Month = new JTextField(); 
//減少月份 
private JButton MonthDown = new JButton(); 
//增加月份 
private JButton MonthUp = new JButton(); 

private JPanel jPanelButton = new JPanel(); 
//減少年份 
private JButton YearDown = new JButton(); 
//增加年份 
private JButton YearUp = new JButton(); 
//顯示日期的位置 
private JLabel Out = new JLabel(); 
//中國時區,以后可以從這里擴展可以設置時區的功能 
private Locale l=Locale.CHINESE; 
//主日歷 
private GregorianCalendar cal=new GregorianCalendar(l); 
//星期面板 
private JPanel weekPanel=new JPanel(); 
//天按鈕組 
private JToggleButton[] days=new JToggleButton[42]; 
//天面板 
private JPanel Days = new JPanel(); 
//標示 
private JLabel jLabel1 = new JLabel(); 
private JLabel jLabel2 = new JLabel(); 
private JLabel jLabel3 = new JLabel(); 
private JLabel jLabel4 = new JLabel(); 
private JLabel jLabel5 = new JLabel(); 
private JLabel jLabel6 = new JLabel(); 
private JLabel jLabel7 = new JLabel(); 
//當前選擇的天數按鈕 
private JToggleButton cur=null; 
//月份天數數組,用來取得當月有多少天 
// 1 2 3 4 5 6 7 8 9 10 11 12 
private int[] mm={31,28,31,30,31,30,31,31,30,31,30,31}; 

//空日期構造函數 
public JCalendar() { 
try { 
jbInit(); 
} 
catch(Exception e) { 
e.printStackTrace(); 
} 

} 
//帶日期設置的構造函數 
public JCalendar(int year, int month, int day) { 
cal.set(year, month, day); 
try { 
jbInit(); 
} 
catch (Exception e) { 
e.printStackTrace(); 
} 
} 
//帶日歷輸入的構造函數 
public JCalendar(GregorianCalendar calendar) { 
cal=calendar; 
try { 
jbInit(); 
} 
catch (Exception e) { 
e.printStackTrace(); 
} 
} 
//帶日期輸入的構造函數 
public JCalendar(Date date) { 
cal.setTime(date); 
try { 
jbInit(); 
} 
catch (Exception e) { 
e.printStackTrace(); 
} 
} 
//初始化組件 
private void jbInit() throws Exception { 
//初始化年、月、日 
iniCalender(); 

this.setLayout(new BorderLayout()); 
this.setBorder(BorderFactory.createRaisedBevelBorder()); 
this.setMaximumSize(new Dimension(200, 200)); 
this.setMinimumSize(new Dimension(200, 200)); 
this.setPreferredSize(new Dimension(200, 200)); 

Main.setLayout(new BorderLayout()); 
Main.setBackground(SystemColor.info); 
Main.setBorder(null); 

Out.setBackground(Color.lightGray); 
Out.setHorizontalAlignment(SwingConstants.CENTER); 
Out.setMaximumSize(new Dimension(100, 19)); 
Out.setMinimumSize(new Dimension(100, 19)); 
Out.setPreferredSize(new Dimension(100, 19)); 

jLabel1.setForeground(Color.red); 
jLabel1.setHorizontalAlignment(SwingConstants.CENTER); 
jLabel1.setHorizontalTextPosition(SwingConstants.CENTER); 
jLabel1.setText("日"); 
jLabel2.setForeground(Color.blue); 
jLabel2.setHorizontalAlignment(SwingConstants.CENTER); 
jLabel2.setHorizontalTextPosition(SwingConstants.CENTER); 
jLabel2.setText("六"); 
jLabel3.setHorizontalAlignment(SwingConstants.CENTER); 
jLabel3.setHorizontalTextPosition(SwingConstants.CENTER); 
jLabel3.setText("五"); 
jLabel4.setHorizontalAlignment(SwingConstants.CENTER); 
jLabel4.setHorizontalTextPosition(SwingConstants.CENTER); 
jLabel4.setText("四"); 
jLabel5.setHorizontalAlignment(SwingConstants.CENTER); 
jLabel5.setHorizontalTextPosition(SwingConstants.CENTER); 
jLabel5.setText("三"); 
jLabel6.setBorder(null); 
jLabel6.setHorizontalAlignment(SwingConstants.CENTER); 
jLabel6.setHorizontalTextPosition(SwingConstants.CENTER); 
jLabel6.setText("二"); 
jLabel7.setBackground(Color.lightGray); 
jLabel7.setForeground(Color.black); 
jLabel7.setBorder(null); 
jLabel7.setHorizontalAlignment(SwingConstants.CENTER); 
jLabel7.setHorizontalTextPosition(SwingConstants.CENTER); 
jLabel7.setText("一"); 

weekPanel.setBackground(UIManager.getColor("InternalFrame.activeTitleGradient")); 
weekPanel.setBorder(BorderFactory.createEtchedBorder()); 
weekPanel.setLayout(new GridLayout(1,7)); 
weekPanel.add(jLabel1, null); 
weekPanel.add(jLabel7, null); 
weekPanel.add(jLabel6, null); 
weekPanel.add(jLabel5, null); 
weekPanel.add(jLabel4, null); 
weekPanel.add(jLabel3, null); 
weekPanel.add(jLabel2, null); 

MonthUp.setAlignmentX((float) 0.0); 
MonthUp.setActionMap(null); 

jPanelMonth.setBackground(SystemColor.info); 
jPanelMonth.setLayout(new BorderLayout()); 
jPanelMonth.setBorder(BorderFactory.createEtchedBorder()); 


Month.setBorder(null); 
Month.setHorizontalAlignment(SwingConstants.CENTER); 
Month.addMouseListener(new java.awt.event.MouseAdapter() { 
public void mouseClicked(MouseEvent e) { 
Month_mouseClicked(e); 
} 
}); 
Month.addKeyListener(new java.awt.event.KeyAdapter() { 
public void keyPressed(KeyEvent e) { 
Month_keyPressed(e); 
} 
}); 

MonthDown.setBorder(null); 
MonthDown.setText("\u25C4"); 
MonthDown.addActionListener(new java.awt.event.ActionListener() { 
public void actionPerformed(ActionEvent e) { 
MonthDown_actionPerformed(e); 
} 
}); 
MonthUp.setBorder(null); 
MonthUp.setText("\u25BA"); 
MonthUp.addActionListener(new java.awt.event.ActionListener() { 
public void actionPerformed(ActionEvent e) { 
MonthUp_actionPerformed(e); 
} 
}); 


jPanelButton.setLayout(null); 
jPanelButton.setBorder(null); 
jPanelButton.addComponentListener(new java.awt.event.ComponentAdapter() { 
public void componentResized(java.awt.event.ComponentEvent evt) { 
jPanelButtonComponentResized(evt); 
} 
}); 

Year.setBorder(BorderFactory.createEtchedBorder()); 
Year.setMaximumSize(new Dimension(80, 25)); 
Year.setMinimumSize(new Dimension(80, 25)); 
Year.setPreferredSize(new Dimension(80, 25)); 
Year.setHorizontalAlignment(SwingConstants.CENTER); 
Year.addMouseListener(new java.awt.event.MouseAdapter() { 
public void mouseClicked(MouseEvent e) { 
Year_mouseClicked(e); 
} 
}); 
Year.addKeyListener(new java.awt.event.KeyAdapter() { 
public void keyPressed(KeyEvent e) { 
Year_keyPressed(e); 
} 
}); 

YearDown.setBorder(null); 
YearDown.setMaximumSize(new Dimension(16, 16)); 
YearDown.setMinimumSize(new Dimension(16, 16)); 
YearDown.setPreferredSize(new Dimension(16, 16)); 
YearDown.setSize(new Dimension(16, 16)); 
YearDown.setText("▼"); 
YearDown.addActionListener(new java.awt.event.ActionListener() { 
public void actionPerformed(ActionEvent e) { 
YearDown_actionPerformed(e); 
} 
}); 
YearUp.setBorder(null); 
YearUp.setMaximumSize(new Dimension(16, 16)); 
YearUp.setMinimumSize(new Dimension(16, 16)); 
YearUp.setPreferredSize(new Dimension(16, 16)); 
YearUp.setSize(new Dimension(16, 16)); 
YearUp.setText("▲"); 
YearUp.addActionListener(new java.awt.event.ActionListener() { 
public void actionPerformed(ActionEvent e) { 
YearUp_actionPerformed(e); 
} 
}); 

jPanelDay.setLayout(new BorderLayout()); 

Days.setLayout(new GridLayout(6,7)); 
Days.setBackground(SystemColor.info); 

for(int i=0;i<42;i++){ 
days[i]=new JToggleButton(); 
days[i].setBorder(null); 
days[i].setBackground(SystemColor.info); 
days[i].setHorizontalAlignment(SwingConstants.CENTER); 
days[i].setHorizontalTextPosition(SwingConstants.CENTER); 
//days[i].setSize(l,l); 
days[i].addActionListener(new java.awt.event.ActionListener(){ 
public void actionPerformed(ActionEvent e) { 
day=Integer.parseInt(((JToggleButton)e.getSource()).getText()); 
showDate(); 
showDays(); 
} 
}); 
Days.add(days[i]); 
} 

this.add(Main, BorderLayout.NORTH); 
this.add(jPanelDay, BorderLayout.CENTER); 
this.add(jPanelMonth, BorderLayout.SOUTH); 

Main.add(Year, BorderLayout.CENTER); 
Main.add(Out, BorderLayout.WEST); 
Main.add(jPanelButton, BorderLayout.EAST); 

jPanelButton.add(YearUp); 
jPanelButton.add(YearDown); 

jPanelDay.add(weekPanel,BorderLayout.NORTH); 
jPanelDay.add(Days, BorderLayout.CENTER); 

jPanelMonth.add(Month, BorderLayout.CENTER); 
jPanelMonth.add(MonthDown, BorderLayout.WEST); 
jPanelMonth.add(MonthUp, BorderLayout.EAST); 

showMonth(); 
showYear(); 
showDate(); 
showDays(); 
} 

//自定義重畫年選擇面板 
void jPanelButtonComponentResized(java.awt.event.ComponentEvent evt){ 
YearUp.setLocation(0,0); 
YearDown.setLocation(0,YearUp.getHeight()); 
jPanelButton.setSize(YearUp.getWidth(),YearUp.getHeight()*2); 
jPanelButton.setPreferredSize(new Dimension(YearUp.getWidth(),YearUp.getHeight()*2)); 
jPanelButton.updateUI(); 
} 

//測試用 
public static void main(String[] args){ 
JFrame f=new JFrame(); 
f.setContentPane(new JCalendar()); 
f.pack(); 
//f.setResizable(false); 
f.show(); 
} 

//增加年份 
void YearUp_actionPerformed(ActionEvent e) { 
year++; 
showYear(); 
showDate(); 
showDays(); 
} 

//減少年份 
void YearDown_actionPerformed(ActionEvent e) { 
year--; 
showYear(); 
showDate(); 
showDays(); 
} 

//減少月份 
void MonthDown_actionPerformed(ActionEvent e) { 
month--; 
if(month<0) { 
month = 11; 
year--; 
showYear(); 
} 
showMonth(); 
showDate(); 
showDays(); 
} 

//增加月份 
void MonthUp_actionPerformed(ActionEvent e) { 
month++; 
if(month==12) { 
month=0; 
year++; 
showYear(); 
} 
showMonth(); 
showDate(); 
showDays(); 
} 

//初始化年月日 
void iniCalender(){ 
year=cal.get(Calendar.YEAR); 
month=cal.get(Calendar.MONTH); 
day=cal.get(Calendar.DAY_OF_MONTH); 
} 

//刷新月份 
void showMonth(){ 
Month.setText(Integer.toString(month+1)+"月"); 
} 

//刷新年份 
void showYear(){ 
Year.setText(Integer.toString(year)+"年"); 
} 

//刷新日期 
void showDate(){ 
Out.setText(Integer.toString(year)+"-"+Integer.toString(month+1)+"-"+Integer.toString(day)); 
} 

//重畫天數選擇面板 
void showDays() { 
cal.set(year,month,1); 
int firstDayOfWeek = cal.get(Calendar.DAY_OF_WEEK); 
int n=mm[month]; 
if(cal.isLeapYear(year)&&month==1) n++; 
int i=0; 
for(;i<firstDayOfWeek-1;i++){ 
days[i].setEnabled(false); 
days[i].setSelected(false); 
days[i].setText(""); 
} 
int d=1; 
for(;d<=n;d++){ 
days[i].setText(Integer.toString(d)); 
days[i].setEnabled(true); 
if(d==day) days[i].setSelected(true); 
else days[i].setSelected(false);; 
i++; 
} 
for(;i<42;i++){ 
days[i].setEnabled(false); 
days[i].setSelected(false); 
days[i].setText(""); 
} 
} 

//單擊年份面板選擇整個年份字符串 
void SelectionYear(){ 
Year.setSelectionStart(0); 
Year.setSelectionEnd(Year.getText().length()); 
} 

//單擊月份面板選擇整個月份字符串 
void SelectionMonth(){ 
Month.setSelectionStart(0); 
Month.setSelectionEnd(Month.getText().length()); 
} 

//月份面板響應鼠標單擊事件 
void Month_mouseClicked(MouseEvent e) { 
//SelectionMonth(); 
inputMonth(); 
} 

//檢驗輸入的月份 
void inputMonth(){ 
String s; 
if(Month.getText().endsWith("月")) 
{ 
s=Month.getText().substring(0,Month.getText().length()-1); 
} 
else s=Month.getText(); 
month=Integer.parseInt(s)-1; 
this.showMe(); 
} 

//月份面板鍵盤敲擊事件響應 
void Month_keyPressed(KeyEvent e) { 
if(e.getKeyChar()==10) 
inputMonth(); 
} 

//年份面板響應鼠標單擊事件 
void Year_mouseClicked(MouseEvent e) { 
//SelectionYear(); 
inputYear(); 
} 

//年份鍵盤敲擊事件響應 
void Year_keyPressed(KeyEvent e) { 
//System.out.print(new Integer(e.getKeyChar()).byteValue()); 
if(e.getKeyChar()==10) 
inputYear(); 
} 

//檢驗輸入的年份字符串 
void inputYear() { 
String s; 
if(Year.getText().endsWith("年")) 
{ 
s=Year.getText().substring(0,Year.getText().length()-1); 
} 
else s=Year.getText(); 
year=Integer.parseInt(s); 
this.showMe(); 
} 

//以字符串形式返回日期,yyyy-mm-dd 
public String getDate(){return Out.getText();} 

//以字符串形式輸入日期,yyyy-mm-dd 
public void setDate(String date){ 
if(date!=null){ 
StringTokenizer f = new StringTokenizer(date, "-"); 
if(f.hasMoreTokens()) 
year = Integer.parseInt(f.nextToken()); 
if(f.hasMoreTokens()) 
month = Integer.parseInt(f.nextToken()); 
if(f.hasMoreTokens()) 
day = Integer.parseInt(f.nextToken()); 
cal.set(year,month,day); 
} 
this.showMe(); 
} 

//以日期對象形式輸入日期 
public void setTime(Date date){ 
cal.setTime(date); 
this.iniCalender(); 
this.showMe(); 
} 

//返回日期對象 
public Date getTime(){return cal.getTime();} 

//返回當前的日 
public int getDay() { 
return day; 
} 

//設置當前的日 
public void setDay(int day) { 
this.day = day; 
cal.set(this.year,this.month,this.day); 
this.showMe(); 
} 

//設置當前的年 
public void setYear(int year) { 
this.year = year; 
cal.set(this.year,this.month,this.day); 
this.showMe(); 
} 

//返回當前的年 
public int getYear() { 
return year; 
} 

//返回當前的月 
public int getMonth() { 
return month; 
} 

//設置當前的月 
public void setMonth(int month) { 
this.month = month; 
cal.set(this.year,this.month,this.day); 
this.showMe(); 
} 

//刷新 
public void showMe(){ 
this.showDays(); 
this.showMonth(); 
this.showYear(); 
this.showDate(); 
} 

} 


public class TestJCalendar { 
public static void main(String[] args) { 
JFrame f=new JFrame(); 
f.setContentPane(new JCalendar()); 
f.pack(); 
//f.setResizable(false); 
f.show(); 
} 
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩久久一区二区| 精品国产伦一区二区三区观看体验| 午夜电影一区二区| 中文一区一区三区高中清不卡| 欧美日韩一级片网站| 成人综合婷婷国产精品久久蜜臀 | 久久免费午夜影院| 欧美三区在线观看| 成人黄色a**站在线观看| 日韩精品1区2区3区| 亚洲欧美一区二区三区国产精品| 精品欧美一区二区三区精品久久| 91麻豆免费在线观看| 国产精品88888| 九色porny丨国产精品| 午夜久久久影院| 一区二区三区欧美久久| 中文字幕制服丝袜成人av| www国产精品av| 日韩免费高清电影| 欧美美女一区二区在线观看| 色婷婷久久综合| a亚洲天堂av| 成人综合婷婷国产精品久久免费| 国产一区二区网址| 久久成人免费网站| 日韩电影免费一区| 视频在线观看91| 午夜国产不卡在线观看视频| 一区二区三区四区不卡视频| 综合电影一区二区三区 | 蜜桃视频在线一区| 秋霞av亚洲一区二区三| 午夜精品免费在线观看| 亚洲图片一区二区| 一级做a爱片久久| 亚洲一区二区三区四区不卡| 亚洲一线二线三线视频| 一区二区三区国产精华| 一区二区三区不卡在线观看| 亚洲一区在线电影| 亚洲午夜精品久久久久久久久| 亚洲一区二区三区影院| 亚洲444eee在线观看| 亚洲3atv精品一区二区三区| 视频在线在亚洲| 久久国产生活片100| 国产一区二区久久| 波多野结衣91| 91在线国产观看| 日本道在线观看一区二区| 欧美影院一区二区| 91精品国产高清一区二区三区蜜臀| 欧美一区日本一区韩国一区| 欧美zozo另类异族| 国产日韩欧美激情| 亚洲美女视频一区| 亚洲成a人v欧美综合天堂| 蜜桃久久久久久| 国产高清不卡二三区| 91亚洲男人天堂| 欧美电影影音先锋| 久久午夜免费电影| 国产精品国产三级国产aⅴ无密码| 亚洲视频一二三| 日韩成人午夜精品| 国产精品18久久久久| 色婷婷av一区二区三区软件| 欧美电影一区二区三区| 久久久久国产精品麻豆| 亚洲精品高清视频在线观看| 日韩高清一区在线| 成人小视频免费观看| 精品视频一区三区九区| 精品三级在线看| **欧美大码日韩| 日本欧美一区二区| eeuss鲁一区二区三区| 欧美三级视频在线| 久久婷婷国产综合精品青草| 依依成人精品视频| 韩国女主播成人在线观看| 色综合一个色综合| 日韩欧美国产综合| 亚洲激情在线播放| 国产在线精品免费| 国产成人精品网址| 一二三四社区欧美黄| 极品少妇一区二区| 欧美午夜精品久久久久久孕妇| www久久精品| 午夜精品aaa| www.亚洲国产| 欧美电影免费观看高清完整版在线 | 丁香婷婷综合五月| 欧美电影影音先锋| 亚洲另类春色校园小说| 韩国理伦片一区二区三区在线播放| 一本大道av一区二区在线播放| 欧美岛国在线观看| 亚洲福利一二三区| 99久久久精品| 久久久夜色精品亚洲| 视频一区二区欧美| 91理论电影在线观看| 久久精品夜夜夜夜久久| 麻豆精品在线视频| 欧美日韩在线亚洲一区蜜芽| 国产精品不卡在线观看| 国产在线精品一区在线观看麻豆| 欧洲国产伦久久久久久久| 国产精品国产自产拍高清av王其| 精品一区二区三区久久久| 欧美色精品在线视频| 亚洲精品成人在线| 91首页免费视频| 国产精品的网站| 丁香亚洲综合激情啪啪综合| 久久午夜电影网| 国产原创一区二区| 精品国产免费视频| 欧美96一区二区免费视频| 欧美三级一区二区| 亚洲成a人v欧美综合天堂下载 | 日本电影欧美片| 成人免费小视频| 成人黄色777网| 欧美激情一区二区三区在线| 国产精品影视在线| 久久久不卡网国产精品一区| 韩国毛片一区二区三区| 久久人人爽人人爽| 狠狠v欧美v日韩v亚洲ⅴ| 欧美r级在线观看| 精一区二区三区| 久久综合狠狠综合久久综合88| 国产一区视频导航| 久久精品人人做人人爽97| 国产成人小视频| 国产精品欧美一区喷水| av资源站一区| 亚洲色图制服诱惑| 欧美视频中文字幕| 日韩电影在线观看一区| 日韩欧美久久久| 国产精品77777竹菊影视小说| 久久久久97国产精华液好用吗| 国产高清在线精品| 亚洲日穴在线视频| 欧美优质美女网站| 日本女人一区二区三区| 久久女同互慰一区二区三区| 大胆亚洲人体视频| 亚洲一区成人在线| 欧美一级片在线| 韩国成人精品a∨在线观看| 国产亚洲自拍一区| 91尤物视频在线观看| 偷窥少妇高潮呻吟av久久免费 | 一区二区三区四区激情| 欧美日韩精品欧美日韩精品一综合| 日韩电影免费一区| 久久九九影视网| 在线一区二区三区| 秋霞电影一区二区| 国产精品人成在线观看免费 | 欧美亚洲国产一区二区三区| 日韩专区中文字幕一区二区| 久久人人超碰精品| 在线亚洲一区二区| 久久国产精品露脸对白| 中文欧美字幕免费| 欧美人与禽zozo性伦| 国产一区中文字幕| 亚洲黄网站在线观看| 精品少妇一区二区三区在线播放| 不卡一区二区三区四区| 视频一区国产视频| 国产欧美一区二区在线观看| 欧美亚洲一区二区在线| 国产精品影视网| 亚洲a一区二区| 国产精品免费人成网站| 91精品欧美福利在线观看| 成人网在线免费视频| 日本欧美一区二区三区| 成人免费在线观看入口| 精品免费日韩av| 91国产免费观看| 粉嫩av一区二区三区| 日韩精品高清不卡| 亚洲精品国产无天堂网2021| 久久蜜桃av一区精品变态类天堂| 欧美色国产精品| av综合在线播放| 国产精品1024久久| 蜜桃精品在线观看| 亚洲中国最大av网站| 国产精品久久三| 欧美精品一区二区三区蜜桃|