JavaBean程序分析
我想把HtmlCalendarNotePad中的主要方法介绍一些,相信会大家有所帮助
public void setYear(int year) //设置年份 。默认值为当前的年份
public int getYear() //获得年份 。默认值为当前的年份
//这是标准Java程序写法,因为Java程序就是一个类所以经常写这种setXXX/getXXX
public void setMonth(int month) //设置月份(1-12),默认值为当前的月
public int getMonth() //获得月份(1-12),默认值为当前的月
public void setStyle(int style)
public int getStyle()
//设置/获得日历的样式(style)
//是以星期天为一星期的第一天HtmlCalendarNotePad.SUNDAY_FIRST还是以星期一为一星期的第一天 HtmlCalendarNotePad.MONDAY_FIRST
// 默认值为HtmlCalendarNotePad.SUNDAY_FIRST
public void setLocale(Locale loc) //设置地区代码(Locale), 默认值为Locale.PRC
public Locale getLocale() //获得地区代码(Locale), 默认值为Locale.PRC
public void setAction(int day, String actionUrl ,String target_frame)
//设置超链接,来处理请求。如果出了任何错误的话,该方法会返回一个空的字符串。
// 你可以设置一个普通的URL,如“http://www.yesky.com/action.jsp”
// 或者一个一个javascript 函数名, 如 “myFunction”
// 日期将被作为一个参数传给URL,或者作为一个字符串值传给 javascript. 格式是yyyymmdd.
// target_frame可以为空的字符串。
如:
如果调用setAction(21,"http://www.yesky.com/","_blank")
超链接为: 〈a href="http://www.yesky.com/?date=20000621" target=_blank〉21〈/a〉
public void setActions(String actionUrl, String target_frame)
//你也可以为一个月的每一天设置超链接
现在让我和大家一起来分享那颗诱人的豆子(Bean)吧:(HtmlCalendarNotePad.java)。
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
public class HtmlCalendarNotePad
{
public static final int MONDAY_FIRST = 1; //设置每星期是以星期一为第一天
public static final int SUNDAY_FIRST = 2; //设置每星期是以星期日为第一天
private Hashtable config;
private static final String Mnth[] = {
"一月", "二月", "三月", "四月", "五月", "六月",
"七月", "八月", "九月", "十月", "十一月", "十二月"
};
private int year;
private int month;
private int style;
private String sFont;
private Locale loc;
private static String NEWLINE = "\n";
public HtmlCalendarNotePad () //构造函数
{
sFont = null;
GregorianCalendar gCalendar = new GregorianCalendar(); //取得当前的日历(格里高里历)
config = new Hashtable(); //创建新的哈希表储存配置信息
NEWLINE = System.getProperty("line.separator");
style = 2; //设置每星期是以星期日为第一天
month = gCalendar.get(2); //取得月份
year = gCalendar.get(1); //取的年份
loc = Locale.PRC; //设置国家名,默认为中华人民共和国
}
private String formatObject(String s, Object obj)
{
String s1 = "";
if(obj != null)
s1 = String.valueOf(String.valueOf(obj));
if(s == null)
return s1;
else
return s + s1 + "〈/font〉";
}
private int getDay(Calendar calendar) //取得某日在日历中的位置
{
if(style == 2)
return calendar.get(7) - 1;
else
return (calendar.get(7) + 5) % 7;
}
public String getHtml()
{
GregorianCalendar gCalendar = new GregorianCalendar(year, month - 1, 1);
GregorianCalendar gCalendar1 = new GregorianCalendar(2001, 3, 24);
SimpleDateFormat simpledateformat = new SimpleDateFormat("EEE", loc);
//设置缩写格式,EEE是星期的缩写,如 Sun, 若EEEE则为Sunday。
int i = month - 1;
int j = 0;
StringBuffer stringbuffer = new StringBuffer(""); //创建新的字符串缓冲区
stringbuffer.append("〈table〉〈tr〉\n"); //在stringbuffer上添加〈table〉〈tr〉,为创建表格作准备
if(style == 2) //见上解释
{
stringbuffer.append("〈th align=right〉" + formatObject(sFont, simpledateformat.format(gCalendar1.getTime())) + "〈/th〉\n");
gCalendar1.add(5, 1);
for(int k = 1; k 〈 7; k++)
{
stringbuffer.append("〈th align=right〉" + formatObject(sFont, simpledateformat.format(gCalendar1.getTime())) + "〈/th〉\n");
gCalendar1.add(5, 1);
}
}
else
{
gCalendar1.add(5, 1);
stringbuffer.append("〈th align=right〉" + formatObject(sFont, simpledateformat.format(gCalendar1.getTime())) + "〈/th〉\n");
for(int l = 2; l 〈 8; l++)
{
gCalendar1.add(5, 1);
stringbuffer.append("〈th align=right〉" + formatObject(sFont, simpledateformat.format(gCalendar1.getTime())) + "〈/th〉\n");
}
}
stringbuffer.append("〈/tr〉\n");
int i1 = 0;
j = 0;
if(getDay(gCalendar) 〉 0)
{
stringbuffer.append("〈tr〉");
for(; i1 〈 getDay(gCalendar); i1++)
{
stringbuffer.append("〈td align=right〉");
if(sFont != null)
stringbuffer.append(sFont + " 〈/font〉");
else
stringbuffer.append(" ");
stringbuffer.append("〈/td〉\n");
j++;
}
}
for(; gCalendar.get(2) == i; gCalendar.add(5, 1))
{
int j1 = gCalendar.get(5);
int k1 = (i1 + j1) % 7;
if(k1 == 1)
{
stringbuffer.append("〈tr〉" + NEWLINE);
j = 0;
}
stringbuffer.append("〈td align=right〉");
j++;
if(sFont != null)
stringbuffer.append(sFont);
String s;
if((s = (String)config.get(String.valueOf(j1))) != null)
{
stringbuffer.append("〈a href=\"");
if(s.toUpperCase().startsWith("HTT") || s.indexOf(".") 〉 0)
{
stringbuffer.append(s);
if(s.indexOf("?") 〈 0)
stringbuffer.append("?date=" + stringDate(gCalendar));
else
stringbuffer.append("&date=" + stringDate(gCalendar));
}
else
{
stringbuffer.append("javascript:" + s + "('" + stringDate(gCalendar) + "');");
}
stringbuffer.append("\"");
if((s = (String)config.get(j1 + "target")) != null)
stringbuffer.append(" target=\"" + s + "\"");
stringbuffer.append("〉");
stringbuffer.append(gCalendar.get(5));
stringbuffer.append("〈/a〉\n");
}
else
{
stringbuffer.append(String.valueOf(j1));
}
if(sFont != null)
stringbuffer.append("〈/font〉");
stringbuffer.append("〈/td〉\n");
if(k1 == 0)
stringbuffer.append("〈/tr〉\n");
}
if(j 〈 7)
{
for(; j 〈 7; j++)
{
stringbuffer.append("〈td align=right〉");
if(sFont != null)
stringbuffer.append(sFont);
stringbuffer.append(" ");
if(sFont != null)
stringbuffer.append("〈/font〉");
stringbuffer.append("〈/td〉\n");
}
stringbuffer.append("〈/tr〉\n");
}
stringbuffer.append("〈/table〉\n");
return stringbuffer.toString();
}
public Locale getLocale() //获取地区名
{
return loc;
}
public int getYear() //取得年份
{
return htmlCalendarYear;
}
public int getMonth() //取得月分
{
return htmlCalendarMonth;
}
public int getStyle() //取得日历的样式
{
return htmlCalendarStyle;
}
//设置动作的URI,target_frame 的值可以为_blank、 _parent、 _top、 _self。
public void setAction(int day, String actionUri, String target_frame)
{
if(actionUri != null)
{
config.put(String.valueOf(day), actionUri);
if(target_frame != null && target_frame.length() 〉 0)
config.put(day + "target", target_frame);
}
}
//设置一个月的所有天的超链接
public void setActions(String actionUri, String target_frame)
{
for(int day = 1; day 〈= 31; day++)
setAction(day, actionUri, target_frame);
}
//设置地区
public void setLocale(Locale locale)
{
loc = locale;
}
//设置年份
public void setYear(int htmlCalendarYear)
{
if(htmlCalendarYear 〉 0)
{
year = htmlCalendarYear;
config.clear();
}
}
//设置月份
public void setMonth(int htmlCalendarMonth)
{
if(htmlCalendarMonth 〉= 1 && htmlCalendarMonth 〈= 12)
{
month = htmlCalendarMonth;
config.clear();
}
}
//设置日历的样式
public void setStyle(int htmlCalendarStyle)
{
style = htmlCalendarStyle;
}
private String stringDate(Calendar calendar)
{
String strDay = String.valueOf(calendar.get(1));
return strDay + twoDigits(calendar.get(2) + 1) + twoDigits(calendar.get(5));
}
private String twoDigits(int day) //为了日历中数字能够对齐,所以1-9 前将加0
{
String stringDay = String.valueOf(day); //取得day的值
if(stringDay.length() == 1) //如果字符串长度为1
return "0" + stringDay; //则在字符串前加零
else
return stringDay;
}
}

在Windows11中组织日常工作和例行公事的一项重要工具是在任务栏中显示时间和日期。此功能通常位于屏幕的右下角,可让您即时访问时间和日期。通过单击此区域,您可以调出日历,从而更轻松地检查即将到来的约会和日期,而无需打开单独的应用程序。但是,如果您使用多个显示器,则此功能可能会遇到问题。具体来说,虽然时钟和日期显示在所有连接的显示器上的任务栏上,但单击第二个显示器上的日期和时间来显示日历的功能不可用。截至目前,此功能仅在主显示屏上起作用-它与Windows10不同,在Windows10中,单击任

很多用户们想要通过win10日历这个工具来查看当前天数,但是日历不会自动显示这一功能,其实我们只需要通过简单的设置,就能够看到今年的累计周数了哦~win10日历显示周数设置教程:1、在桌面左下角的搜索中输入日历并且打开应用。2、在打开的日历应用中,点击左下角的“齿轮”图标后,会在右侧弹出设置,我们点击“日历设置”3、继续在打开的日历设置中,找到“周数”然后将周数选项调整到“一年中的第一天”即可。4、在完成以上设置后,点击“周”即可看到今年的周数统计了。

如果您的Outlook日历无法与Google日历、Teams、iPhone、Android、Zoom、Office帐户等同步,请执行以下步骤来解决问题。日历应用程序可以连接到其他日历服务,如谷歌日历、iPhone、安卓、微软Office365等,这是非常有用的,因为它可以自动同步。但如果OutlookCalendar无法与第三方日历同步怎么办?可能的原因可能是选择错误的日历进行同步,日历不可见,后台应用程序干扰,过时的Outlook应用程序或日历应用程序,等等。修复Outlook日历不同步的初步

日历可以帮助用户们记录下你的行程,甚至还可以设置提醒,但是也有不少的用户们在询问win10日历事件提醒不弹出怎么办?用户们可以先检查一下windows更新情况或者是清除windows应用商店缓存来进行操作就可以了。下面就让本站来为用户们来仔细的介绍一下win10日历事件提醒不弹出问题解析吧。添加日历事件在系统菜单中点击“日历”程序。鼠标左键点击日历中的日期。在编辑窗口输入事件名称和提醒时间,点击“保存”按钮即可添加事件了。win10日历事件提醒不弹出问题解决

无期迷途采购办确定将于2月28日上午11点更新,玩家可以前往淘宝搜索无期迷途采购办选择店铺分类进行购买,本次为大家带来的是MBCC生日会系列及2024台历周边,一起来看看本次的商品详情。无期迷途采购办:日历和生日系列周边上新!无期迷途采购办上新!—预售时间:2024年2月28日11:00——2024年3月13日23:59采购地址:淘宝搜索【无期迷途采购办】选择【店铺】分类即可进店采购;周边介绍:本次周边上新为MBCC生日会系列及2024台历周边,请点击长图查阅详情。采购办上新周边介绍—MBCC生

有使用win0系统的小伙伴有遇见win10日历打不开的情况,这个是正常的电脑的小故障而已,在win10系统的隐私设置里可以解决,今天小编带来了详细的解决方法,下面大家一起来看看吧。win10右下角的日历打不开解决方法1、在win10系统中点击开始→点击上方的程序列表按钮→往下找到拼音(中文)R→日历2、初次使用,可能新事件会点不开(鼠标靠上去,不会有选中的深蓝色),可以在隐私中设置一下。点击桌面左上方的三道杠图标→底部就会有设置菜单;3、在弹出的界面中点击隐私;4、如果之前使用过设置,可以点击左

如果您的Windows11计算机显示时间错误,可能会导致很多问题,甚至阻止您连接到互联网。事实上,当系统显示不正确的日期和时间时,某些应用程序会拒绝打开或运行。那么应该如何解决这个问题呢?下面一起来看看吧!方法一:1、我们首先右键点击下方任务栏空白处,选择任务栏设置2、在任务栏设置中找到右侧的taskbarcorneroverflow3、然后在它上方找到clock或时钟选择开启即可。方法二:1、按下键盘快捷键win+r调出运行,输入regedit回车确定。2、打开注册表编辑器,在其中找到HKEY

win10日历是一款非常好用的系统自带日历功能软件,这款日历功能可以帮助我们随时随地查看日期,如果有需要的话,还能够设置农历等,查看当前是今年的第几周等,非常方便哦~win10日历怎么设置:1、在菜单界面搜索“日历”进入界面。如果提示绑定账户,点击“转到日历”即可跳过。2、点击左下角一排的“齿轮”按钮,右边会自动弹出设置界面,我们就能够进行设置了。win10日历常见问题解答日历在哪设置中文怎么放在桌面日历显示周数日历快捷键日历备忘录同步到手机无法同步咋办怎么显示农历怎么导出日历个性化设置设置周日


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

SublimeText3 Mac version
God-level code editing software (SublimeText3)

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Dreamweaver CS6
Visual web development tools

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software
