注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

{'coding': 'life'}

          I want to be a geek

 
 
 

日志

 
 
 
 

Windows Vista/7桌面边栏小工具开发入门  

2011-04-06 01:16:43|  分类: 操作系统 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 Windows Vista 的Gadget开发其实并不难,只要你有一定的HTML、CSS、Javascript基础就能成功地开发出一个漂亮的桌面小工具。在Vista和 Win7下,每一个桌面Gadget其实就是一个小的浏览器窗口,我们可以通过制作一个HTML页面,来完成各种桌面功能。简单的说,我们可以使用 HTML+CSS来制作界面,用JS完成程序功能。
    Vista和Win7的边栏小工具位于 C:\Program files\Windows Sidebar\gadgets\ 里面,每一个小工具的命名方式都是YourName.Gadget,建立一个这种格式的文件夹,就为你自己的小工具添加了存放目录。

    为了使系统能够识别小工具,每个小工具文件夹下面都有一个gadget.xml文件,用于储存小工具的基本设置,包括名称、版本等等。以下就是一个典型的gadget.xml文件示例:

<?xml version="1.0" encoding="utf-8"?>  
<gadget>  
  <name>test</name><!--小工具名称-->  
  <namespace><!--_locComment_text="{Locked}"-->Yourname.Test</namespace><!--小工具命名空间-->  
  <version><!--_locComment_text="{Locked}"-->1.0.0.0</version><!--小工具版本号-->  
  <author name="枫行天下"><!--作者名称-->  
    <info url="http://www.msphome.cn" text="www.msphome.cn"/><!--更多信息,链接和显示内容-->  
    <logo src="logo.png"/><!--小工具的LOGO-->  
  </author>  
  <copyright><!--_locComment_text="{Locked}"-->? 2009</copyright><!--小工具版权-->  
  <description>简介。</description><!--小工具简介-->  
  <icons>  
    <icon height="48" width="48" src="icon.png"/><!--小工具图标-->  
  </icons>  
  <hosts>  
    <host name="sidebar">  
      <autoscaleDPI><!--_locComment_text="{Locked}"-->true</autoscaleDPI><!--是否自适应分辨率-->  
      <base type="HTML" apiVersion="1.0.0" src="Test.html"/><!--小工具主体HTML文件-->  
      <permissions><!--_locComment_text="{Locked}"-->Full</permissions>  
      <platform minPlatformVersion="1.0"/><!--小工具能正常运行的最低平台-->  
      <defaultImage src="drag.png"/><!--当小工具被拖动时,显示的图形-->  
    </host>  
  </hosts>  
</gadget>  
<?xml version="1.0" encoding="utf-8"?> <gadget>   <name>test</name><!--小工具名称-->   <namespace><!--_locComment_text="{Locked}"-->Yourname.Test</namespace><!--小工具命名空间-->   <version><!--_locComment_text="{Locked}"-->1.0.0.0</version><!--小工具版本号-->   <author name="枫行天下"><!--作者名称-->     <info url="http://www.msphome.cn" text="www.msphome.cn"/><!--更多信息,链接和显示内容-->     <logo src="logo.png"/><!--小工具的LOGO-->   </author>   <copyright><!--_locComment_text="{Locked}"-->? 2009</copyright><!--小工具版权-->   <description>简介。</description><!--小工具简介-->   <icons>     <icon height="48" width="48" src="icon.png"/><!--小工具图标-->   </icons>   <hosts>     <host name="sidebar">       <autoscaleDPI><!--_locComment_text="{Locked}"-->true</autoscaleDPI><!--是否自适应分辨率-->       <base type="HTML" apiVersion="1.0.0" src="Test.html"/><!--小工具主体HTML文件-->       <permissions><!--_locComment_text="{Locked}"-->Full</permissions>       <platform minPlatformVersion="1.0"/><!--小工具能正常运行的最低平台-->       <defaultImage src="drag.png"/><!--当小工具被拖动时,显示的图形-->     </host>   </hosts> </gadget>
    经过以上设置以后,系统就能识别出我们自己的小工具了。接下来,就是编写这个小工具了。
    首先,我们先来了解下YourName.Gadget这个文件夹里面的文件。除了上面的gadget.xml文件,我们还需要存放上面定义的 logo.png,icon.png,drag.png,这些图片文件。如果需要多语言支持,请建立语言文件夹,具体存放方法可以参考工具目录下微软自带的小工具。
    接下来,我们需要知道Gadget的编程接口。在MSDN的参考中,我们得知,在小工具的HTML文件中所包含的JS里面,我们可以使用System.Gadget对象,这个对象包括的事件、方法、属性请参考http://msdn.microsoft.com/zh-cn/library/ms723683(en-us,VS.85).aspx (英文)
    另外,在Gadget里面还有一些对象也是可用的,这些可能对我们非常有用。详情请查看博客园上面的文章http://www.cnblogs.com/wonderow/archive/2007/04/05/701710.html(内容为英文)
    在实际操作中还发现了一个有趣的事情,就是Gadget里面的JS脚本拥有比较高的权限,可以使用一些在浏览器里面被禁用的COM组件,比如adodb、 FSO等等,并且里面的XMLHTTP组件读取也是可以跨域的,呵呵。这样我们可以很方便地使我们的程序变得强大起来。
    至于小工具的尺寸,我们可以通过CSS定义body的width和height来完成,但在Vista下width最大为130px,在Windows 7下貌似可以更大。我们可以通过body标签CSS中的background属性定义背景图片,但这样似乎边框的过度效果就没有了,解决方案是在body 下面一行使用

<g:background style="position:absolute;z-index:-1;width:130px;height:173px" src="img/Back.png" />  
<g:background style="position:absolute;z-index:-1;width:130px;height:173px" src="img/Back.png" />
来定义一个完美的背景。
    想要给小工具添加一个设置页面?可以,只要在公共执行的JS里面加入一句

System.Gadget.settingsUI = "Settings.html";  
System.Gadget.settingsUI = "Settings.html";
就可以了。
    当我们完成开发以后,就需要将小工具打包发布。标准的小工具安装包是以Gadget为扩展名的ZIP或者CAB压缩包。因此,我们只需要把开发文件夹里面的所有文件打包压缩即可。我们可以使用WinRAR制作ZIP压缩包,然后将扩展名修改为Gadget即可,这样,小工具的打包就完成了。

原文:http://starlight36.com/blog/windows_vista_7_gadget_develop_guide/

  评论这张
 
阅读(847)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018