-
Notifications
You must be signed in to change notification settings - Fork 0
11.HtmlCalendar
domanthan edited this page Mar 13, 2020
·
5 revisions
/**
*
*/
package lesson.common;
import java.io.PrintWriter;
/**
* @author gridscale
*
*/
public class HtmlMonth extends TextMonth {
public static final String HTML_WEEK_TITLE = "<tr>"
+ "<th style='color:red'>日</th>"
+ "<th style='color:skyblue'>月</th>"
+ "<th style='color:skyblue'>火</th>"
+ "<th style='color:skyblue'>水</th>"
+ "<th style='color:skyblue'>木</th>"
+ "<th style='color:skyblue'>金</th>"
+ "<th style='color:blue'>土</th> </tr>" ;
public HtmlMonth(int m) {
super(m);
}
@Override
public String getTitle() {
return "<h1>" + super.getTitle() + "</h1>";
}
public void printOut(PrintWriter writer) {
writer.println(getTitle());
writer.println("<table style='width:80%'>");
writer.println(HTML_WEEK_TITLE);
for (int i = 0; i < numberOfWeeks(); i++) {
((HtmlWeek)getWeek(i)).printOut(writer);
}
writer.println("</table>");
}
/**
*
*/
public void printOut() {
System.out.println(getTitle());
System.out.println("<table>");
System.out.println(HTML_WEEK_TITLE);
for (int i = 0; i < numberOfWeeks(); i++) {
getWeek(i).printOut();
}
System.out.println("</table>");
}
}
/**
*
*/
package lesson.common;
/**
* @author gridscale
*
*/
public class HtmlMonthBuilder {
/**
*
* @param year
* @param m
* @return
*/
public HtmlMonth build(int year, int m) {
HtmlMonth month = new HtmlMonth(m);
// How many weeks?
int numberOfDays = CalendarUtil.howManyDaysOfMonth(year, m);
HtmlWeek textWeek = new HtmlWeek();
int weekNumber = 0;
month.addWeek(textWeek, weekNumber);
for (int day = 1; day <= numberOfDays; day++) {
int weekDay = CalendarUtil.weekDay(year, m, day);
textWeek.addWeekDay(weekDay, day);
if (weekDay == 6 && day < numberOfDays) {
textWeek = new HtmlWeek();
weekNumber++;
month.addWeek(textWeek, weekNumber);
}
}
return month;
}
}
/**
*
*/
package lesson.common;
import java.io.PrintWriter;
/**
* @author gridscale
*
*/
public class HtmlWeek extends TextWeek {
@Override
public void printOut() {
System.out.println("<tr>");
for (int i = 0; i < 7; i++) {
System.out.print("<td>" + getDay(i) +"</td>");
}
System.out.println("</tr>");
}
// 192.168.11.10
public void printOut(PrintWriter writer) {
writer.println("<tr>");
for (int i = 0; i < 7; i++) {
writer.print("<td>" + getDay(i) +"</td>");
}
writer.println("</tr>");
}
}