자바 . awt . event . *;
자바 . util . *;
Import javax . swing . *;
Import javax . swing . event . *;
Import javax . swing . table . *;
/* japlet은 java.applet.Applet의 확장 버전입니다 */
public class MyCalendar extends JApplet {
/**
* 정적 상수 집합은 요일 (영어 약어)
* */
public static final String WEEK _ SUN = " SUN ";
공개 static final String WEEK _ MON = " MON
공개 static final String WEEK _ TUE = " TUE ";
공개 static final String WEEK _ WED = " WED ";
공개적인 최종 String WEEK _ THU = " THU ";
공개적인 최종 String WEEK _ FRI = " FRI ";
공개적인 static public static final String WEEK _ SAT = " SAT ";
/**
*정적 상수가 색을 설정
* */
public static final Color background= Color.white
public static final Color foreground= Color.black
public static final Color 헤더 배경 = Color . blue;
public static final Color header foreground = Color . white;
공개적인 최종 컬러 선택된 배경 = Color.blue
공개적인 최종 컬러 선택된 배경 = Color . white;
비공개 JPanel cPane//는 일반적인 경량 컨테이너입니다.
private JLabel yearsLabel/// 짧은 텍스트 문자열이나 이미지 또는 둘 모두를 위한 표시 영역입니다.
//* 사용자가 정렬된 시퀀스에서 숫자 또는 객체 값을 선택할 수 있는 한 줄 입력 필드입니다. */
비공개 JSpinner yearsSpinner
비공개 JLabel monthsLabel
비공개 JComboBox months combobox; // 드롭다운 상자
비공개 JTable daysTable// 테이블< // 테이블의 // 모델
비공개 AbstractTableModel daysModel; // 날짜를 처리하는 클래스
공개 MyCalendar() {
cPane = (JPanel)getContentPane(); //이 폼의 contentPane 객체의 내용을 반환합니다.
}
공개 void init() {
cpane . set layout(new BorderLayout()); // 레이아웃 메서드를 테두리 레이아웃으로 설정합니다.
calendar = calendar . getinstance();
calendar = calendar . getinstance();
years label = new JLabel(" Year:");
years spinner = new JSpinner();
/* JComponent 변경 */
yearsSpinner. setEditor(new JSpinner. NumberEditor(yearsSpinner, "0000"));
/*모델의 현재 값(일반적으로 에디터에 표시되는 값)을 변경합니다. */
년 스피너 . setvalue(new Integer(Calendar . get(Calendar. year));
/* 모델이 변경될 때마다 알림을 받을 리스너를 목록에 추가합니다. 익명의 내부 클래스에서 세부 사항을 수행하세요 */
년 스피너 . addchangelistener(new change listener(){
public void state changed(change event change event){
int day = calendar.get(calendar. 월의 요일);
calendar.set(calendar. MonthDay, 1);
calendar.set(calendar. YEAR, ((Integer) yearsSpinner.getValue()). int value());
int maxDay = Calendar . getactualmaximum(Calendar. 월의 일);
calendar.set(Calendar. 월의 일, 일 & gtmaxDay? maxDay:day);
update view();
}
});
JPanel yearMonthPanel = new JPanel();
//**빌드를 컨테이너에 추가하고 레이아웃을 추가합니다*
cPane.add(yearMonthPanel, BorderLayout. North);
yearmonthpanel . set layout(new BorderLayout());
yearMonthPanel.add(new JPanel(), BorderLayout.) Centre);
JPanel year panel = new JPanel();
/*빌드를 컨테이너에 추가하고 레이아웃*
yearMonthPanel.add(yearPanel, BorderLayout. West);
year. 패널 . set layout(new BorderLayout());
yearPanel.add(yearsLabel, BorderLayout. West);
yearPanel.add(yearsSpinner, BorderLayout. Centre); p>
쇼가 붙여넣어지고 댓글이 작성되었습니다! 도움이 되었기를 바랍니다!