0
gcalendar와 같은 UI를 복제하려고합니다 (해당 기능이 아닌 레이아웃 만) 캘린더로 루프를 작성하여 귀여운 레이아웃을 만드는 방법 ? saturdays 표시와 휴일도.html-js UI 만들기 비슷하게 Java에서 GCalendar
들으
gcalendar와 같은 UI를 복제하려고합니다 (해당 기능이 아닌 레이아웃 만) 캘린더로 루프를 작성하여 귀여운 레이아웃을 만드는 방법 ? saturdays 표시와 휴일도.html-js UI 만들기 비슷하게 Java에서 GCalendar
들으
자바 코드 :
public class CalendarUI {
public static String Dias[] = { "", "DOM", "SEG", "TER", "QUA", "QUI", "SEX", "SAB" };
public static String Meses[] = { "JAN", "FEV", "MAR", "ABR", "MAI", "JUN", "JUL", "AGO", "SET", "OUT", "NOV", "DEZ" };
public static void printCalendar(int currMonth){
int i = 1;
Calendar c = Calendar.getInstance();
NumberFormat formatter = new DecimalFormat("##00");
c.set(Calendar.YEAR, 2009);
c.set(Calendar.MONTH, currMonth);
c.set(Calendar.DATE, i);
// cabecalho com o mes
System.out.println(" - " + Meses[currMonth] + " - ");
// ajuste para o primeiro dia
for (; i < c.get(Calendar.DAY_OF_WEEK); i++) {
System.out.print(" ");
}
// principal
for (i = 1; i <= 31; i++) {
c.set(Calendar.DATE, i);
if (c.get(Calendar.MONTH) == currMonth) {
if (c.get(Calendar.DAY_OF_WEEK) == 1)
System.out.println("");
System.out.print("[ " + Dias[c.get(Calendar.DAY_OF_WEEK)]
+ ", " + formatter.format(i) + " ]");
}
}
System.out.println("\n\n");
}
public static void main(String[] args) {
for (int j = 0; j < 12; j++) {
CalendarUI.printCalendar(j);
}
}
(5 월 주어진 예) 개월 만에 일의 올바른 들여 쓰기 출력 :
- MAI -
[ SEX, 01 ][ SAB, 02 ]
[ DOM, 03 ][ SEG, 04 ][ TER, 05 ][ QUA, 06 ][ QUI, 07 ][ SEX, 08 ][ SAB, 09 ]
[ DOM, 10 ][ SEG, 11 ][ TER, 12 ][ QUA, 13 ][ QUI, 14 ][ SEX, 15 ][ SAB, 16 ]
[ DOM, 17 ][ SEG, 18 ][ TER, 19 ][ QUA, 20 ][ QUI, 21 ][ SEX, 22 ][ SAB, 23 ]
[ DOM, 24 ][ SEG, 25 ][ TER, 26 ][ QUA, 27 ][ QUI, 28 ][ SEX, 29 ][ SAB, 30 ]
[ DOM, 31 ]
이제 기본적으로 인쇄 태그를 변경하여 UI의 올바른 html을 출력 할 수 있습니다. –
당신은 UI와 같은 의미 Google 캘린더? http://stackoverflow.com/questions/859012/approach-to-build-a-simple-calendar-in-java-swing – Mark
을 참조하십시오. 정확하지는 않지만 달력을 반복하는 것과 같아야합니다. JTable은 그것을 충족시키지 못한다. 즉, 컴포넌트 자체보다는 알고리즘이 더 필요하다. –
좋아,하지만 주석은 JPanels를 대안으로 사용하는 것에 대해 이야기했습니다. JPanel을 사용하거나 Java2D 레벨에서 구성 요소를 직접 그릴 수 있습니다. – Mark