📄 calendardialog.java
字号:
package cn.st.ui;
import java.awt.BorderLayout;
import java.awt.Frame;
import java.util.Date;
import java.util.Iterator;
import java.util.Locale;
import java.util.SortedSet;
import javax.swing.JDialog;
import javax.swing.JPanel;
import org.jdesktop.swingx.DateSelectionListener;
import org.jdesktop.swingx.DefaultDateSelectionModel;
import org.jdesktop.swingx.calendar.JXMonthView;
import org.jdesktop.swingx.event.DateSelectionEvent;
import cn.st.util.DateUtil;
public class CalendarDialog extends JDialog implements DateSelectionListener{
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private StudentInfoPanel stp = null;
/**
* @param owner
*/
public CalendarDialog(Frame owner, StudentInfoPanel stp) {
super(owner);
initialize();
init();
this.stp = stp;
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(300, 200);
this.setContentPane(getJContentPane());
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(new BorderLayout());
}
return jContentPane;
}
private void init() {
this.setModal(true);
JXMonthView monthView = new JXMonthView();
monthView.setPreferredCols(0);
monthView.setPreferredRows(0);
monthView.getSelectionModel().addDateSelectionListener(this);
monthView.setSelectionMode(JXMonthView.SelectionMode.SINGLE_SELECTION);
monthView.setAutoscrolls(true);
monthView.setAntialiased(false);
monthView.setVerifyInputWhenFocusTarget(true);
monthView.setTraversable(true);
monthView.setShowTrailingDates(true);
monthView.setShowLeadingDates(true);
monthView.setShowingWeekNumber(true);
monthView.setLocale(Locale.SIMPLIFIED_CHINESE);
this.add(monthView);
}
public void valueChanged(DateSelectionEvent arg0) {
// TODO Auto-generated method stub
SortedSet sort = ((DefaultDateSelectionModel)arg0.getSource()).getSelection();
Iterator<Date> it = sort.iterator();
Date date = new Date();
while(it.hasNext()) {
date = it.next();
}
if(date != null) {
if(this.stp != null) {
if(this.stp.getJTBirthday() != null) {
this.stp.getJTBirthday().setText(DateUtil.formatYYYYMMDD(date));
}
}
}
this.dispose();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -