Vistaのサイバーに表示するガジェットはjavacsript,xmlとガジェット用APIで作成できるテキストベースの小さなプログラムある。
はじめに、簡単なガジェットを作成してみる。登録はマニュアル、一応設定画面あり。
ガジェットに必要なファイルは最低3つあればできる。
gadget.xml <=サイドバーに登録するxmlファイル he.html <=ガジェットのメインのページ he.js <=上記のjavascript用ファイル ============================================ setting.html<=設定を変更するページ
それ以外はページを飾る画像ファイルを使用する
また、できたガジェットはひとつのフォルダに入れ、
C:\Users\okada\AppData\Local\Microsoft\Windows Sidebar\Gadgets\
にフォルダーごと保存する
ちなみにはじめからインストールされているガジェットは
C:\Program Files\Windows Sidebar\Gadgets
にある
<?xml version="1.0" encoding="utf-8"?> <gadget> <name>へ〜ぼたん</name> <version>1.2</version> <author name="ISM"> </author> <copyright>ISM</copyright> <icons> <icon width="80" height="60" src="he-1B.jpg" /> <==ガジェット追加用画面の画像 </icons> <hosts> <host name="sidebar"> <base type="HTML" apiVersion="1.0.0" src="he.html" /> <==ここにサイドバーに表示するhtmlを記入 <permissions>Full</permissions> <platform minPlatformVersion="1.0"/> </host> </hosts> </gadget>
he.html
<HTML> <HEAD> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"/> <script src="he.js" type="text/javascript"></script> <link href="he.css" rel="stylesheet" type="text/css" charset="Shift_JIS"/> <bgsound src="he.wav" volume="-10000" id="mySND" loop="1"> </HEAD> <!-- 表示画像の大きさを指定する --> <body style="width:120px;height:100px;" onclick="hbset()" onload="load()"> <IMG SRC = "he-1B.png" WIDTH="120" HEIGHT="100" border="0" name="hebutton" style="left:0px;top:0px" /> </BODY> </HTML>
he.js
var Vollevel = "-1500"; var Silent; function hbset(){ hb0 = new Image(); hb0.src = "he-1B.png"; hb1 = new Image(); hb1.src = "he-1.png"; if(!Silent){ mySND.volume =Vollevel; mySND.src ="he.wav"; } setTimeout("document.images[\"hebutton\"].src = hb0.src", 300); //0.3秒後 document.images["hebutton"].src = hb1.src; //こちらが先 } function load() { System.Gadget.settingsUI="settings.html"; System.Gadget.onSettingsClosed=settingsClosed; function settingsClosed(event){ if (event.closeAction == event.Action.commit){ Volume = System.Gadget.Settings.read("Volume"); switch ( Volume ) { case 1: Vollevel = "-2500"; break; case 2: Vollevel = "-2000"; break; case 3: Vollevel = "-1500"; break; case 4: Vollevel = "-1000"; break; case 5: Vollevel = "-500"; break; default: Vollevel = "-1500"; } } Silent = System.Gadget.Settings.read("Silent"); } }