?? calendarpanel.jad
字號:
// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov Date: 17/3/2005 12:40:27
// Home Page : http://members.fortunecity.com/neshkov/dj.html - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name: CalendarPanel.java
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Calendar;
import java.util.Date;
import javax.swing.*;
public class CalendarPanel extends JDialog
{
public CalendarPanel(Frame frame)
{
super(frame);
lightBlue = new Color(192, 255, 255);
lightYellow = new Color(255, 255, 192);
lightGreen = new Color(192, 255, 192);
green = new Color(128, 255, 128);
timePanel = new TimePanel();
setModal(true);
calendar = Calendar.getInstance();
init();
setUndecorated(true);
(new EasyMove()).install(this);
setBounds(100, 100, 400, 400);
setResizable(false);
}
public Date getDate()
{
if(calendar != null)
return calendar.getTime();
else
return null;
}
private void init()
{
Container container = getContentPane();
JLabel jlabel = new JLabel("Powered by Yoshi");
jlabel.setHorizontalAlignment(0);
container.add(jlabel, "South");
JPanel jpanel = new JPanel();
jpanel.setLayout(new GridLayout(7, 7));
day = new JButton[42];
String as[] = {
"Sun.", "Mon.", "Tue.", "Wed.", "Thur.", "Fri.", "Sat."
};
for(int i = 0; i < 7; i++)
{
JLabel jlabel1 = new JLabel(as[i]);
jlabel1.setOpaque(true);
jlabel1.setBackground(lightGreen);
jlabel1.setHorizontalAlignment(0);
jpanel.add(jlabel1);
}
for(int j = 0; j < day.length; j++)
{
day[j] = new JButton();
day[j].setBackground(lightYellow);
day[j].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
int k = JOptionPane.showConfirmDialog(CalendarPanel.this, timePanel, "\u8ACB\u9078\u64C7\u6642\u9593", 2);
if(k == 0)
{
int l = Integer.parseInt(((JButton)actionevent.getSource()).getText());
calendar.set(5, l);
calendar.set(10, Integer.parseInt(timePanel.getHour()));
calendar.set(12, Integer.parseInt(timePanel.getMinute()));
if(timePanel.getAMPM().equals("AM"))
calendar.set(9, 0);
else
calendar.set(9, 1);
dispose();
}
}
});
jpanel.add(day[j]);
}
setDays();
container.add(jpanel);
JPanel jpanel1 = new JPanel();
jpanel1.setBackground(green);
container.add(jpanel1, "North");
final JLabel year = new JLabel("" + calendar.get(1));
JButton jbutton = new JButton("+");
jbutton.setBackground(green);
jbutton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
String s = year.getText();
int k = Integer.parseInt(s);
year.setText("" + ++k);
calendar.set(1, k);
setDays();
}
});
JButton jbutton1 = new JButton("-");
jbutton1.setBackground(green);
jbutton1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
String s = year.getText();
int k = Integer.parseInt(s);
year.setText("" + --k);
calendar.set(1, k);
setDays();
}
});
JButton jbutton2 = new JButton("Cancel");
jbutton2.setBackground(green);
jbutton2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
dispose();
calendar = null;
}
});
jpanel1.add(new JLabel("\u967D\u6625\u6708\u66C6"));
jpanel1.add(year);
jpanel1.add(jbutton);
jpanel1.add(jbutton1);
String as1[] = {
"January", "February", "March", "April", "May", "June", "July", "August", "September", "October",
"November", "December"
};
month = new JComboBox(as1);
month.setBackground(green);
month.setSelectedIndex(calendar.get(2));
month.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionevent)
{
int k = month.getSelectedIndex();
switch(k)
{
case 0: // '\0'
k = 0;
break;
case 1: // '\001'
k = 1;
break;
case 2: // '\002'
k = 2;
break;
case 3: // '\003'
k = 3;
break;
case 4: // '\004'
k = 4;
break;
case 5: // '\005'
k = 5;
break;
case 6: // '\006'
k = 6;
break;
case 7: // '\007'
k = 7;
break;
case 8: // '\b'
k = 8;
break;
case 9: // '\t'
k = 9;
break;
case 10: // '\n'
k = 10;
break;
case 11: // '\013'
k = 11;
break;
}
calendar.set(2, k);
setDays();
}
});
jpanel1.add(month);
jpanel1.add(jbutton2);
}
private void setDays()
{
Calendar calendar1 = (Calendar)calendar.clone();
calendar1.set(5, 1);
byte byte0 = 0;
switch(calendar1.get(7))
{
case 1: // '\001'
byte0 = 0;
break;
case 2: // '\002'
byte0 = 1;
break;
case 3: // '\003'
byte0 = 2;
break;
case 4: // '\004'
byte0 = 3;
break;
case 5: // '\005'
byte0 = 4;
break;
case 6: // '\006'
byte0 = 5;
break;
case 7: // '\007'
byte0 = 6;
break;
}
for(int i = 0; i < day.length; i++)
day[i].setBackground(lightYellow);
for(int j = 0; j < byte0; j++)
{
day[j].setText("");
day[j].setEnabled(false);
}
int k = calendar.getActualMaximum(5);
for(int l = byte0; l < k + byte0; l++)
{
day[l].setText(((l - byte0) + 1) + "");
day[l].setEnabled(true);
}
for(int i1 = k + byte0; i1 < day.length; i1++)
{
day[i1].setText("");
day[i1].setEnabled(false);
}
Calendar calendar2 = Calendar.getInstance();
if(calendar2.get(1) == calendar.get(1) && calendar2.get(5) == calendar.get(5) && calendar2.get(2) == calendar.get(2))
day[(byte0 + calendar.get(5)) - 1].setBackground(lightBlue);
}
private JButton day[];
private JComboBox month;
private Calendar calendar;
private Color lightBlue;
private Color lightYellow;
private Color lightGreen;
private Color green;
private TimePanel timePanel;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -