3.日历 (Calendar)

硕正日历的部分外观和行为是可配置的, 位于 supcan.xml 的 <root> \ <global> \ <CalendarStyle> 处, 语法是以分号分隔的名-值对, 其中主要是大量的颜色名值对, 可用的颜色名含义简图：
上图的自定义串就是:

    <CalendarStyle>bandColor=#D4D8FD; weekBarColor=#E2E2FD; timeBarColor=#C8CAF1; gridColor=#DDDFEE; backColor=#FFFFFF; otherMonthColor=#EEEFFF; otherMonthTextColor=#404040; FaceName=Verdana; height=-12;italic=1; ShadowAlpha=120; ShadowBlur=34; ShadowX=2; ShadowY=6; isSundayAtLeft=true</CalendarStyle>

颜色和字体名含义默认值如下, 如果下面颜色值为 "-1", 表示没有定义, 即不需要绘制：

颜色 | 属性名 | 含义 | 默认值
bandColor | 主背景色, 默认根据当前色调, 自动分配默认的颜色, 很可能是双色上下渐变的. 并且, 其余区域背景色如果不定义, 那么该颜色将延续到所有这些区域 | (自动)
weekBarColor | 上方“星期几”文字行的区域背景色 | -1
timeBarColor | 下方“时分秒”文字行的区域背景色 | -1
backColor | 中间区域背景色, 也可以设置成上下渐变的2个颜色串, 比如 "#EEEEEE,#FFFFFF" | -1
otherMonthColor | 非本月区域的背景色 | #F0FAF0
otherMonthTextColor | 非本月区域的文字色 | #444444
rextColor | 主文字色 | #000000
sundayTextColor | 星期天的文字色 | #800000
activeColor | 活动日 (即鼠标划过) 半透明覆盖色, 是 ARGB 格式, "A" 表示透明度 | #28A0E6FF
activeBorderColor | 活动日 (即鼠标划过) 边框线色 | #789FB9
dataColor | 当前日 (即加载进来的日期) 半透明覆盖色, 是 ARGB 格式, "A" 表示透明度 | #466BB3CE
dataBorderColor | 当前日 (即加载进来的日期) 边框线色 | #325973
borderColor | 外边框色 | #A0A0D2
gridColor | 内边框 (表格线) 色 | -1
lineColor | 星期区域和中间区域之间的分隔线、中间区域和时分秒区域之间的分隔线色 | #0078F0
字体 | FaceName 或 FontName | 字体名 | Arial
height | 字体大小 | -12
... | 其余属性请参见 Treelist的Font规范 |

除了颜色和字体, 还有如下外观、行为可以自定义:

属性名 | 含义 | 默认值
isSundayAtLeft | 星期天是否位于最左侧 | false
monthAnimateAble | 点击上月、下月按钮(在月份下拉的两侧), 是否动画滑动切换 | true
dateTimeAnimateAble | 用于 datetime 类型, true/false, 鼠标点击非当前月的日期时, 是否动画切换. | true
dateAnimateAble | 用于 date 类型, true/false, 设成 true 时, 当鼠标点击非当前月的日期时, 动画切换到该月份, 窗口不关闭; 设为 false 时, 是直接选中了该日期、并关闭日历下拉框 | false