📄 timerenderer.java.svn-base
字号:
package collector.gui.guiVo;
import java.util.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;
public class TimeRenderer
extends javax.swing.JPanel
implements TableCellRenderer {
public TimeRenderer() {
jbInit();
this.setPreferredSize(new Dimension(285, 24));
for (int i = 0; i <= 1000; i++) {
this.YearCombo.addItem(String.valueOf(2000 + i));
}
for (int i = 1; i <= 12; i++) {
this.MonthCombo.addItem(String.valueOf(i));
}
for (int i = 1; i <= 31; i++) {
this.DateCombo.addItem(String.valueOf(i));
}
for (int i = 0; i <= 23; i++) {
this.HourCombo.addItem(String.valueOf(i));
}
for (int i = 0; i < 60; i++) {
this.MinuteCombo.addItem(String.valueOf(i));
}
this.setTime();
}
private void jbInit() { //GEN-BEGIN:jbInit
YearCombo = new javax.swing.JComboBox();
jLabel1 = new javax.swing.JLabel();
MonthCombo = new javax.swing.JComboBox();
jLabel2 = new javax.swing.JLabel();
DateCombo = new javax.swing.JComboBox();
jLabel3 = new javax.swing.JLabel();
HourCombo = new javax.swing.JComboBox();
jLabel4 = new javax.swing.JLabel();
MinuteCombo = new javax.swing.JComboBox();
jLabel5 = new javax.swing.JLabel();
setLayout(new javax.swing.BoxLayout(this, javax.swing.BoxLayout.X_AXIS));
setMaximumSize(new java.awt.Dimension(285, 24));
setMinimumSize(new java.awt.Dimension(285, 24));
setPreferredSize(new java.awt.Dimension(285, 24));
YearCombo.setFont(new java.awt.Font("Dialog", 0, 12));
YearCombo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
YearComboActionPerformed(evt);
}
});
add(YearCombo);
jLabel1.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel1.setText("\u5e74");
add(jLabel1);
MonthCombo.setFont(new java.awt.Font("Dialog", 0, 12));
MonthCombo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MonthComboActionPerformed(evt);
}
});
add(MonthCombo);
jLabel2.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel2.setText("\u6708");
add(jLabel2);
DateCombo.setFont(new java.awt.Font("Dialog", 0, 12));
add(DateCombo);
jLabel3.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel3.setText("\u65e5");
add(jLabel3);
HourCombo.setFont(new java.awt.Font("Dialog", 0, 12));
add(HourCombo);
jLabel4.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel4.setText("\u65f6");
add(jLabel4);
MinuteCombo.setFont(new java.awt.Font("Dialog", 0, 12));
add(MinuteCombo);
jLabel5.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel5.setText("\u5206");
add(jLabel5);
} //GEN-END:jbInit
private void YearComboActionPerformed(java.awt.event.ActionEvent evt) { //GEN-FIRST:event_YearComboActionPerformed
getDays();
} //GEN-LAST:event_YearComboActionPerformed
private void MonthComboActionPerformed(java.awt.event.ActionEvent evt) { //GEN-FIRST:event_MonthComboActionPerformed
getDays();
} //GEN-LAST:event_MonthComboActionPerformed
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel2;
private javax.swing.JComboBox HourCombo;
private javax.swing.JComboBox MonthCombo;
private javax.swing.JComboBox DateCombo;
private javax.swing.JComboBox MinuteCombo;
private javax.swing.JComboBox YearCombo;
private javax.swing.JLabel jLabel5;
// End of variables declaration//GEN-END:variables
public Component getTableCellRendererComponent(
JTable table, Object value,
boolean isSelected,
boolean hasFocus,
int row, int col) {
this.YearCombo.setEnabled(isSelected);
this.MonthCombo.setEnabled(isSelected);
this.DateCombo.setEnabled(isSelected);
this.HourCombo.setEnabled(isSelected);
this.MinuteCombo.setEnabled(isSelected);
return this;
}
public int getyear() {
return Integer.parseInt( (String) (this.YearCombo.getSelectedItem())) -
1900;
}
public int getmonth() {
return Integer.parseInt( (String) (this.MonthCombo.getSelectedItem())) - 1;
}
public int getdate() {
return Integer.parseInt( (String) (this.DateCombo.getSelectedItem()));
}
public int gethour() {
return Integer.parseInt( (String) (this.HourCombo.getSelectedItem()));
}
public int getminute() {
return Integer.parseInt( (String) (this.MinuteCombo.getSelectedItem()));
}
private int DayInMonth(int my_year, int my_month) {
int day_num = 0;
if (my_month == 1 || my_month == 3 || my_month == 5 ||
my_month == 7 || my_month == 8 || my_month == 10 || my_month == 12) {
day_num = 31;
}
if (my_month == 4 || my_month == 6 || my_month == 9 || my_month == 11) {
day_num = 30;
}
if (my_month == 2) {
if (my_year % 4 == 0 && (my_year % 100 != 0 || my_year % 400 == 0)) {
day_num = 29;
}
else {
day_num = 28;
}
}
return day_num;
}
private void getDays() {
if (YearCombo.getSelectedIndex() != -1 &&
MonthCombo.getSelectedIndex() != -1) {
int days = this.DayInMonth(Integer.parseInt( (String) YearCombo.
getSelectedItem()),
Integer.parseInt( (String) MonthCombo.
getSelectedItem()));
this.DateCombo.removeAllItems();
for (int i = 0; i < days; i++) {
this.DateCombo.addItem( (new Integer(i + 1)).toString());
}
}
}
private void setTime() {
Date m_Date = new Date();
YearCombo.setSelectedItem(String.valueOf(m_Date.getYear() + 1900));
MonthCombo.setSelectedItem(String.valueOf(m_Date.getMonth() + 1));
DateCombo.setSelectedItem(String.valueOf(m_Date.getDate()));
HourCombo.setSelectedItem(String.valueOf(m_Date.getHours()));
MinuteCombo.setSelectedItem(String.valueOf(m_Date.getMinutes()));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -