终于完成了一个Windows边栏小工具。
这个20分记分器是用来给自己每天的成就打分的。每完成一个工作或任务,点击Points就增加20分。
用来激励自己,努力奋斗。下面是工具的下载链接,由于博客园上传文件类型的限制,将.gadget的后缀
改成了.zip。要安装的朋友将.zip后缀改为.gadget即可。
https://files.cnblogs.com/paiooo/20%e5%88%86%e8%ae%b0%e5%88%86%e5%99%a8.zip
下面来说下Gadget边栏小工具的开发,嘿嘿。
windows vista和7支持一个叫做小工具的东西,自带的有性能表盘,时钟,日历等。
之前一直不明白是怎么开发的。其实原理很简单,就是由html,javascript,css等组成的一个小网页程序。
小工具的安装文件后缀是.gadget,这个看起来怪怪的扩展名其实是由.zip文件改出来的。也就是说,这些
安装文件其实是一个个的zip文件。那么zip包里有些什么呢,不用说了,就是一堆网页必须的文件。
如果你会用javascript就可以写出gadget小工具。个人觉得这中web实现方法挺好的,google桌面的小工具
也是如此。
当然,不是说所有的网页都可以打包成gadget文件的。必须是具有正确格式的gadget.xml文件的网页程序才能
打包作为gadget小工具。下边是gadget.xml的样例:
2 <gadget>
3 <name>20分 记分器</name>
4 <namespace>Yimo</namespace>
5 <version>1.0</version>
6 <author name="yimo">
7 <info url="#Yimo" />
8 <logo src="logo.png" />
9 </author>
10 <copyright>Yimo ©2010</copyright>
11 <description>20分记分器</description>
12 <icons>
13 <icon width="64" height="64" src="icon.png" />
14 </icons>
15 <hosts>
16 <host name="sidebar">
17 <base type="HTML" apiVersion="1.0.0" src="gadget.html" />
18 <permissions>full</permissions>
19 <platform minPlatformVersion="0.3" />
20 </host>
21 </hosts>
22 </gadget>
这个xml文件必须以gadget为根元素。需要注意的是ahthor元素的子元素logo,和icons元素,在我的代码中引用的文件是
"logo.png",如果你解压了《20分记分器》,会发现根本没有此文件。这个是微软为gadget预留的默认图标,用来在小工具
集程序里显示图标,将自己的图片文件引用过去就能在小工具集中显示你自定的图标了。我比较懒,没换。
下边的hosts元素中,base元素的src属性记录了你的小工具的入口页面,程序从此页面开始。platform元素的属性
minPlatformVersion好像指的是最低平台版本要求,之前有写过"1.0",结果不能运行。有个百度搜索小工具在此处的版本号是
"0.1"。msdn上的格式用的是"0.3"所以就用了这个。
当你设置完gadget.xml后,还需要注意这个元素<g:background>,其他的就跟网页开发无异了。
这个元素确定了你页面的外部皮肤,用了透明图层的png文件,只有在这里引用才能正确实现。我开始时不知道有这个,外观始终
不能实现png透明。下面的关于<g:background>的代码片段:
1 <body>
3 <div id="gadgetContent">
4 <div id="num" onclick="reset();">---</div>
5 <div id="point" onclick="addPoint();">Points</div>
6 </div>
7 </g:background>
8 </body>
希望这些能对初次接触gadget的朋友有所帮助