文档库 最新最全的文档下载
当前位置:文档库 › 掌万说明

掌万说明

掌万说明.txt
掌心万年历今日插件皮肤制作说明 2009/12/30

掌心万年历皮肤为HandCalendar\TodaySkins目录下的*.ini文件(ASCII格式的文本文件)
文件行首如果是#,表示该行是注释行。

皮肤分为以下几个部分:
Name,
Refresh,
DrawCalendar,
DrawPic,
DrawString,
DrawStringEx,
DrawClock,
SetFestivalFont,
SetFestivalRect,
ClickAction,
Height,
OnScreenNormal,
OnScreenLandscape,
SetTsk

1) Name表示皮肤名字,参数是名称,比如:
Name=显示LCD时钟(居右)
表示该皮肤的名字是"显示LCD时钟(居右)"

2) Refresh表示更新频率,参数是:(0-每天, 1-每分钟, 2-每秒, 其他数值表示多少秒),比如:
Refresh=2
表示该皮肤的更新频率是"每秒"(注意每秒更新可能会降低您的电池使用时间)
Refresh=15
表示该皮肤的更新频率是每15秒刷新一次
建议:在有秒钟显示的皮肤里使用2,有分钟显示的皮肤里使用1,其他均使用0

3) DrawCalendar表示显示月历,参数是:(上top像素,左left像素,周六是否节假日,周一为每周开始)
DrawCalendar=4,304,1,0
表示该皮肤在(4,304)坐标显示月历,周六是节假日显示为红色,周一不是每周开始(周日是)

4) DrawPic表示显示图片,参数是:(上top, 左left, 透明色#000000-#FFFFFF, 图片),比如:
DrawPic=2,2,#000000,clock16.bmp
表示该皮肤在(2,2)坐标显示图片clock16.bmp,且把颜色#000000作为透明色
(*注1:对PNG图片,透明色参数无效)
(*注2:掌心万年历暂时只支持32位色的PNG图片)
(*注3:文件名可以使用系统变量)

5) DrawString表示显示字符串,参数是 (字体大小,上top像素,左left像素,字符串),比如:
DrawString=9,5,28,{SY1}-{SM}-{SD}({WD}) {JQ}
表示该皮肤在(5,28)坐标显示字体大小为9的字符串"{SY1}-{SM}-{SD}({WD}) {JQ}",该字符串会被系统自动替换为相应的数据。
(*注1:字符串可以使用系统变量)

6) DrawStringEx表示显示格式化字符串,参数是 (大小,上top,左left,宽度,排版(0-居左, 1-居中, 2-居右),颜色(#000000-#FFFFFF),粗细(0-1000,400是普通,700是粗体),字符串),比如:
DrawStringEx=9,96,20,200,1,#00FF00,700,居中粗体-电池剩余{BatteryPercent}%
表示该皮肤在(96,20)坐标,宽度200,居中显示字体大小为9的绿色(#00FF00)字符串"居中粗体-电池剩余{BatteryPercent}%",该字符串会被系统自动替换为相应的数据。
(*注1:字符串可以使用系统变量)

7) DrawClock表示显示指针时钟,参数是 (上top,左left,指针时钟图片目录),比如:
DrawClock=10,0,VistaClock
表示该皮肤在(10,0)坐标,显示指针时钟,图片目录为TodaySkins\VistaClock
系统将会加载并顺序绘制以下6个文件(如果有文件不存在就忽略,注意 face.png 是必须的文件)
a) face.png (表盘)
b) hour.png (时针)
c

) minute.png (分针)
d) second.png (秒针)
e) dot.png (最外层的圆心)
f) hilight.png (高光)

8) SetFestivalFont表示设置节日信息显示的字体和颜色,参数是 (大小, 颜色[#000000-#FFFFFF, 0表示使用系统颜色])
SetFestivalFont=9,#0000FF
表示该皮肤使用9号字体,颜色为#0000FF(蓝色)显示节日信息
SetFestivalFont=11,0
表示该皮肤使用11号字体,使用系统颜色显示节日信息
(*注1:默认为9号字体,系统颜色显示节日信息)

9) SetFestivalRect表示设置节日信息显示区域,参数是 (上top[-1表示使用默认值], 左left, 宽度width)
SetFestivalRect=200,10,220
表示该皮肤在top=200的位置显示节日信息,左边坐标10,宽度220
SetFestivalFont=-1,0,120
表示该皮肤在默认top的位置显示节日信息,左边坐标0,宽度120

10) Height表示设置皮肤为固定高度,参数是高度像素值
Height=100
表示该皮肤在今日桌面显示的高度是固定的100个像素

11) ClickAction表示在某个区域接收到用户点击后触发的事件,参数是 (上Top, 左Left, 宽度Width, 高度Height, 事件类型[0-启动程序,1-打开新皮肤,2-打开设置窗口,3-刷新今日]), 事件字符串(启动的程序路径 或者 打开的皮肤文件名,对于2,3该项无效)
ClickAction=98,4,72,80,0,{MainDir}\HandCalendar.exe
表示该皮肤在区域(98,4,72,80)接收到用户点击以后,打开掌心万年历主程序
ClickAction=16,80,72,80,0,\Windows\tmail.exe -transport "SMS"
表示该皮肤在区域(16,80,72,80)接收到用户点击以后,打开短消息
ClickAction=16,160,72,80,1,skin2.ini
表示该皮肤在区域(16,160,72,80)接收到用户点击以后,更换为皮肤skin2.ini
(*注1:ClickAction支持键盘操作)
(*注2:在ClickAction区域不能长按弹出设置菜单)
(*注3:ClickAction命令支持系统变量)
(*注4:打开的程序支持快捷方式,比如\Windows\ABC.LNK)

12)OnScreenNormal表示当屏幕竖屏的时候更换的皮肤,参数是皮肤文件名
OnScreenNormal=test.ini
表示该皮肤在屏幕竖屏的时候更换为test.ini皮肤

13)OnScreenLandscape表示当屏幕横屏的时候更换的皮肤,参数是皮肤文件名
OnScreenLandscape=test_landscape.ini
表示该皮肤在屏幕竖屏的时候更换为test_landscape.ini皮肤

14)SetTsk设置皮肤使用的tsk文件,参数是tsk文件名
SetTsk=Manila.tsk
表示该皮肤使用Manila.tsk主题,Manila.tsk文件和皮肤ini文件在同一个目录里


V2.9开发版#1 支持的系统变量有:

【公历】
# {SY} - 公历年,返回值: 2007
# {SM} - 公历月,返回值: 1,2,...,12
# {SD} - 公历日,返回值: 1,2,...,31
# {SY1} - 公历年(2位数),返回值: 99, 07
# {SM_0} - 公历月十位,返回值: 0,1
# {SM_1} - 公历月个位,返回值: 0,1,2,...,9
# {SD_0} - 公历日的十位,返回值: 0,1,2,3
# {SD_1} - 公历日的个位,返回值: 0,1,2,...,9
# {SY_0} -

四位年的第一位数字,返回值:0,1,2
# {SY_1} - 四位年的第二位数字,返回值:0,1,2,...9
# {SY_2} - 四位年的第三位数字,返回值:0,1,2,...9
# {SY_3} - 四位年的第四位数字,返回值:0,1,2,...9
# {SM2} - 公历月,返回值: 01,02,...,12
# {SD2} - 公历日,返回值: 01,02,...,31
# {WY:参数} - 今天是今年第几周,返回值:1,2,3,....52,参数为需要减去的修正值,比如开学在第12周,可以写"距离开学还有{WY:12}周"
# {WD} - 星期几,返回值: 一,二,...,日
# {WD2} - 星期几,返回值: 0,1,2,3,...,6 (0是周日)
# {XZ} - 星座文字,返回值: 摩羯, 宝瓶, ..., 射手
# {XZ2} - 星座编号,返回值: 0-摩羯, 1-水瓶, ..., 12-射手

【农历】
# {SX} - 生肖,返回值: 鸡,狗,...,羊
# {LY} - 农历年,返回值: 2006,2007
# {LM} - 农历月,返回值: 一,二,...,十,腊,东
# {LD} - 农历日,返回值: 一,二,...,三十
# {GY} - 干支年,返回值: 甲子年
# {GM} - 干支月,返回值: 甲子月
# {GD} - 干支日,返回值: 甲子日
# {LM2} - 农历月,返回值: 01,02,03,...,12
# {LD2} - 农历日,返回值: 01,02,03,...30
# {LD2_0} - 农历日十位,返回值: 0,1,2,3
# {LD2_1} - 农历日个位,返回值: 0,1,2,...,9
# {LD3_0} - 农历日汉字的第一位,返回值: 初,十,廿,三
# {LD3_1} - 农历日汉字的第二位,返回值: 一,二,三,...,十
# {LM3} - 农历月,返回值: 一,二,...,十,十一,十二
# {JQ} - 农历节气(不带时间),返回值: 立春
# {JT} - 农历节气(带时间),返回值: 立春03:30
# {RY} - 农历闰月,返回值: 闰 / (空白)
# {RY2} - 农历是否闰月,返回值: 1/0
# {SC} - 农历时辰,返回值: 子/丑/.../亥
# {SC2} - 农历时辰,返回值: 甲子/甲丑/.../癸亥
# {SJSF} - 三九三伏入梅出梅,返回值: 入梅/出梅/初伏第2天/三九第9天/...

【时钟】
# {SH} - 公历时(24小时制),返回值: 0,1,...,23
# {SH12} - 公历时(12小时制),返回值: 1,2,...,12
# {SF} - 公历分,返回值: 0,1,...,59
# {SS} - 公历秒,返回值: 0,1,...,59
# {SH12_0} - 公历12小时制十位,返回值: 0,1
# {SH12_1} - 公历12小时制个位,返回值: 0,1,..,9
# {SH0} - 公历24时十位,返回值: 0,1,2
# {SH1} - 公历24时个位,返回值: 0,1,..,9
# {SF0} - 公历分十位,返回值: 0,1,..,5
# {SF1} - 公历分个位,返回值: 0,1,..,9
# {SS0} - 公历秒十位,返回值: 0,1,..,5
# {SS1} - 公历秒个位,返回值: 0,1,..,9
# {APM} - AM/PM,返回值: am,pm
# {APM_CHS} - AM/PM中文,返回值: 上午/下午
# {IsAM} - 当前是否AM,返回值: 0,1
# {IsPM} - 当前是否PM,返回值: 0,1
# {HasAlarm} - 是否有闹钟,返回值: 0,1
# {NextAppointment} - 下一个日程安排(WM5之后支持)

【系统资源】
# {MemRestMB} - 内存剩余MB(带一位小数),返回值: 0.0,1.9,...
# {MemR

estPercent} - 内存剩余比,返回值: 0,1,...,99,100
# {MemUsedMB} - 内存使用MB(带一位小数),返回值: 0.0,0.1,...
# {MemUsedPercent} - 内存使用百分比,返回值: 0,1,...,99,100
# {BatteryPercent} - 电源剩余百分比,返回值: 0,1,...,99,100
# {BatteryLevel} - 电源剩余量(10个等级),返回值: 1,2,3,4,5,6,7,8,9,10
# {BatteryFlag} - 电池状态,返回值: 0-正在充电, 1-电量正常, 2-电量低, 3-电量非常低, 4-没有电池, 5-未知状态
# {BatteryFlagName} - 电池状态,返回值: 正在充电/电量正常/电量低/电量非常低/没有电池/未知状态
# {Landscape} - 屏幕是横向还是纵向,返回值: 0-纵向屏幕/1-横向屏幕
# {ACPower} - 电池是否在充电,返回值: 0-没有充电, 1-正在充电
# {StoreRestMB} - RAM存储剩余MB(带一位小数),返回值: 0.0,1.9,...
# {StoreRestPercent} - RAM存储剩余比,返回值: 0,1,...,99,100
# {StoreUsedMB} - RAM存储使用MB(带一位小数),返回值: 0.0,0.1,...
# {StoreUsedPercent} - RAM存储使用百分比,返回值: 0,1,...,99,100
# {BTMode} - 蓝牙状态,返回值: 0(关闭或者不存在),1(打开),2(可发现)

【电话相关】
# {UnreadSMS} - 未读短信数量(WM5之后支持),返回值: 0,1,2...
# {MissedCall} - 漏接电话数量(WM5之后支持),返回值: 0,1,2...
# {UnreadSMS2} - 是否有未读短信(WM5之后支持),返回值: 0,1
# {MissedCall2} - 是否有漏接电话(WM5之后支持),返回值: 0,1
# {Signal} - 电话信号强度(WM5之后支持),返回值: 0,1,2...,100
# {SignalLevel} - 电话信号强度等级(WM5之后支持),返回值: 0,1,2...,10
# {Operator} - 电话运营商(WM5之后支持),返回值: 中国移动,中国联通,...
# {UnreadMMS} - 未读彩信数量(WM5之后支持),返回值: 0,1,2...
# {UnreadMMS2} - 是否有彩信短信(WM5之后支持),返回值: 0,1

【其他】
# {01} - 0/1奇偶器(第一次调用返回0,下次调用返回1),返回值: 0,1
# {Colone01} - 冒号,返回值: : / (空白)
# {S1} - 1秒奇偶器(奇数秒返回1,偶数秒返回0),返回值: 0,1
# {S10} - 10秒奇偶器(秒的十位是奇数秒返回1,秒的十位是偶数秒返回0),返回值: 0,1
# {MainDir} - 返回掌心万年历程序所在主目录
# {SkinDir} - 返回掌心万年历当前今日皮肤所在主目录
# {Registry:注册表路径} - 显示注册表内容,比如 {Registry:HKEY_CURRENT_USER\System\State\Tasks\Active}



关于QVGA皮肤转VGA皮肤的制作技巧:
字体大小不需要变化,字体的显示位置乘以2就好了。
举例来说:
QVGA是DrawString=9,2,2,Hello world!
VGA对应的就是DrawString=9,4,4,Hello world!

如果在您制作自己的皮肤过程中,需要我们提供更多的系统变量,请告诉我们,谢谢!

FiT工作室
https://www.wendangku.net/doc/9815881722.html,
HandCalendar@https://www.wendangku.net/doc/9815881722.html,

2009.12

相关文档
相关文档 最新文档