`
terryfeng
  • 浏览: 504917 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

两个 Gadget 小程序

阅读更多

这三天,做了两个小gadget。

2009-07-19_154304 2009-07-19_154342

待办的代码:

Gadget.htm

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>我的待办</title>
<script src="jquery.js" type="text/javascript"></script>
<style>
body{margin:0px;  font-family:"微软雅黑", "宋体"; font-size:12px; color:#FFFFFF}
table,td{font-size:12px}
A:link{
    font-size:12px;
    color:#ffffff;
    text-decoration:none;
    font-family:"微软雅黑", "宋体";
    letter-spacing:5px;
    }
A:visited{
    font-size:12px;
    color:#ffffff;
    text-decoration:none;
    font-family:"微软雅黑", "宋体";
    letter-spacing:5px;
    }
A:hover{
    font-size:12px;
    color:#ffffff;
    text-decoration:none;
    font-family:"微软雅黑", "宋体";
    letter-spacing:5px;
    }
    </style>
    <script type="text/javascript">
        var openUrl;
         var hostIP = "http://localhost:9999";
        //http://10.204.32.116/ActiveChart/Chart/GadgetService.asmx
        //var hostIP = "http://10.204.32.116/ActiveChart";
        function updateChart() {

            var OAName = System.Gadget.Settings.readString("OAName");
            System.Debug.outputString(OAName); //DEBUG CODE
            var OAPass = System.Gadget.Settings.readString("OAPass");
            System.Debug.outputString(OAPass); //DEBUG CODE

            var HostName = System.Gadget.Settings.readString("HostName");
            System.Debug.outputString(HostName); //DEBUG CODE

            if (OAName != "") {
                var ipTest = hostIP + "/Chart/GadgetService.asmx/GetAllWorkSigns";
                System.Debug.outputString(ipTest); //DEBUG CODE
                var str = "";
                var count = 0;
                $.ajax({
                    type: "POST",   //访问WebService使用Post方式请求
                    contentType: "application/json", //WebService 会返回Json类型
                    url: hostIP + "/Chart/GadgetService.asmx/GetAllWorkSigns", //调用WebService的地址和方法名称组合 ---- WsURL/方法名
                    data: "{hostName:'" + "jiangguoqiang" + "',oaName:'" + OAName + "',oaPass:'" + OAPass + "'}",         //这里是要传递的参数,格式为 data: "{paraName:paraValue}",下面将会看到      
                    dataType: 'json',
                    success: function(result) {     //回调函数,result,返回值

                        $(result.d).each(function() {

                        if (count % 4 == 0) {
                            str += "<tr >";
                        }
                        System.Debug.outputString("记录信息:" + this['SignName'] + System.Gadget.Settings.readString(this['SignName']));
                        if (System.Gadget.Settings.readString(this['SignName']) == "True") {
                        str += "<td width=\"25%\" height=\"38\" align=\"center\"><div onmousedown=\"javascript:windowOpen('" + this['SignUrl'] + "');\"><img alt='" + this['SignName'] + "' src=\"images/" + this['SignName'] + ".png\" width=\"32\" height=\"32\"><br /><span height=\"15\" align=\"center\">(" + this['SignCount'] + ")</span></td>"
                        //System.Debug.outputString(str);
                        count = count + 1;
                        }

                        if (count == 4 || count == 8 || count == 12) {
                            str += "</tr>";
                        }
                        });
                        System.Debug.outputString("添加表格内容:" + str);
                        $("#tb1").html(str);
                    }
                });
            }
            else {
                $("#tb1").html("<tr><td>请点击设置功能键登陆!</td></tr>");
                System.Debug.outputString("未设置"); //DEBUG CODE
            }

            timerID = setTimeout(updateChart, 10000);
        }
        function Initialize() {
            System.Gadget.settingsUI = "options.html";
        }

        function windowOpen(url) {

            window.open(url, "NewWin", "height=524,width=1100,top=0,left=0,   toolbar=no,   menubar=no,   scrollbars=no,   resizable=no,location=no,   status=no,fullscreen=yes");

        }
    </script>
</head>

<body onload="Initialize();updateChart();"   style=" margin:0; width: 228px; height: 240px; background-repeat:no-repeat;background:url(bgbk5.png);"><div style="width:228px">

<table width="228" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td><img src="images/head_db.png" width="228" height="25"></td>
  </tr>
  <tr>
    <td height="150" valign="top" background="images/body_bk.png">
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td height="180" background="images/body1.png" style="background-repeat:no-repeat" valign=top>
          <table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td height="18"></td>
            </tr>
          </table>
          <table id="tb1" width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
            <!--
            <tr id="tr1">
              <td width="25%" height="38" align="center"><div onmousedown="javascript:windowOpen('');"><img src="images/HD.png" width="32" height="32"><br /><span height="15" align="center">申请(1)</span></div></td>
              <td width="25%" align="center"><img src="images/ie7_ico2.png" width="32" height="32"><br /><span height="15" align="center">硬盘(2)</span></td>
              <td width="25%" align="center"><img src="images/System.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
              <td width="25%" align="center"><img src="images/System.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
            </tr>
            <tr id="tr2">
              <td width="25%" height="38" align="center"><img src="images/HD.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
              <td width="25%" align="center"><img src="images/ie7_ico2.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
              <td width="25%" align="center"><img src="images/System.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
              <td width="25%" align="center"><img src="images/System.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
            </tr>
            <tr id="tr3">
              <td width="25%" height="38" align="center"><img src="images/HD.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
              <td width="25%" align="center"><img src="images/ie7_ico2.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
              <td width="25%" align="center"><img src="images/System.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
              <td width="25%" align="center"><img src="images/System.png" width="32" height="32"><br /><span height="15" align="center">硬盘</span></td>
            </tr>
            -->
          </table>
           </td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td valign="top"><div align="justify"><img src="images/bottom.png" width="228" height="13"></div></td>
  </tr>
</table>
</div>
</body>
</html>

Setting.htm

<html>
<head>
    <title>Options</title>

    <script src="jquery.js" type="text/javascript"></script>

    <script>
        function LoadSettings() {
            try {
                System.Gadget.onSettingsClosing = onclose;
            } catch (e) { };
            txtOAName.value = System.Gadget.Settings.readString("OAName");

            txtOAPass.value = System.Gadget.Settings.readString("OAPass");
            System.Gadget.Settings.write("申告",  false);
            System.Gadget.Settings.write("待办项", false);
            System.Gadget.Settings.write("故障", false);
            System.Gadget.Settings.write("作业工单", false);
            System.Gadget.Settings.write("问题", false);
            System.Gadget.Settings.write("变更", false);
            System.Gadget.Settings.write("OA待办", false);
            System.Gadget.Settings.write("OA公文", false);
        }
        function onclose(event) {
            if (event.closeAction == event.Action.commit) {
                System.Gadget.Settings.write("OAName", txtOAName.value);
                System.Gadget.Settings.write("OAPass", txtOAPass.value);
                var environmentVariableValue = System.Environment.getEnvironmentVariable("UserName");
                System.Gadget.Settings.write("HostName", environmentVariableValue);

                if ($("#ckbSG").attr('checked') == true) {
                    System.Gadget.Settings.write("申告", true);

                }
                if ($("#ckbSG").attr('checked') == true) {
                    System.Gadget.Settings.write("待办项", true);

                }
                if ($("#ckbGZ").attr('checked') == true) {
                    System.Gadget.Settings.write("故障", true);

                }
                if ($("#ckbZYGD").attr('checked') == true) {
                    System.Gadget.Settings.write("作业工单", true);

                }
                if ($("#ckbWT").attr('checked') == true) {
                    System.Gadget.Settings.write("问题", true);

                }
                if ($("#ckbBG").attr('checked') == true) {
                    System.Gadget.Settings.write("变更", true);

                }
                if ($("#ckbOADB").attr('checked') == true) {
                    System.Gadget.Settings.write("OA待办", true);

                }
                if ($("#ckbOAGW").attr('checked') == true) {
                    System.Gadget.Settings.write("OA公文", true);

                }
            }
            System.Debug.outputString(txtOAPass.value);
            event.cancel = false;
        }
    </script>

    <style type="text/css">
        body
        {
            margin: 0px;
            font-family: Segoe UI, Tahoma, sans-serif;
            font-size: 12px;
            width: 260px;
            height: 120px;
        }
        table
        {
            font-size: 12px;
            font-family: Segoe UI, Tahoma, sans-serif;
        }
    </style>
</head>
<body onload="LoadSettings();">
    <table border="0" width="260" cellpadding="0" cellspacing="5">
        <tr>
            <td valign="middle">
                用户名:
            </td>
            <td align="left">
                <input type="text" id="txtOAName" style='width: 120px;' />
            </td>
        </tr>
        <tr>
            <td valign="middle">
                密码:
            </td>
            <td align="left">
                <input type="password" id="txtOAPass" style='width: 120px;' />
            </td>
        </tr>
        <tr>
            <td valign="middle"  colspan="2">
                申告<input id="ckbSG" type="checkbox" checked="checked" />
                待办项<input id="ckbDBX" type="checkbox" checked="checked" />
                故障<input id="ckbGZ" type="checkbox" checked="checked" />
                作业工单<input id="ckbZYGD" type="checkbox" checked="checked" />
            </td>
        </tr>
        <tr>
            <td valign="middle" colspan="2">
                问题<input id="ckbWT" type="checkbox" checked="checked" />
                变更<input id="ckbBG" type="checkbox" checked="checked" />
                OA待办<input id="ckbOADB" type="checkbox" checked="checked" />
                OA公文<input id="ckbOAGW" type="checkbox" checked="checked" />
            </td>
        </tr>
    </table>
</body>
</html>

分享到:
评论

相关推荐

    Weather_download1.gadget.rar_gadget

    2. Weather.htm 和 Flyout.htm:这两个可能是HTML文件,分别代表小工具的主要界面和弹出扩展界面。它们使用HTML和JavaScript编写,显示天气信息和其他交互元素。 3. gadget.xml:这是小工具的核心配置文件,包含了小...

    Win7桌面小工具 -股票行情 .gadget

    Win7桌面小工具 -股票行情 .gadget

    USB Ethernet/RNDIS Gadget Drivers

    2. **网络桥接**:可以将一个设备的USB端口转变为以太网端口,用于桥接两个网络,例如,将一台没有物理以太网接口的笔记本电脑连接到有线网络。 3. **设备调试**:开发者可以利用这个功能,通过USB对网络功能进行...

    Google gadget 代码

    【压缩包子文件的文件名称列表】中的 "devx-feeds.xml" 和 "hello-world.xml" 可能分别代表两个示例小工具的配置或数据文件。"devx-feeds.xml" 可能是一个包含RSS源信息的配置文件,用于展示来自DevX(一个技术资讯...

    自己写的gadget 比较简陋 仅作参考之用

    由于作者是初次尝试,他提到这两个方面可能写得较为粗糙和初级。 根据提供的文件名“hello world test.gadget”,我们可以猜测这是一个测试版本的gadget,很可能包含了基本的“Hello World”示例,用于验证gadget的...

    shizhong.rar_gadget

    在提供的压缩包文件名称列表中,我们有两个文件: 1. "www.pudn.com.txt":这可能是一个文本文件,通常用于包含链接、说明或者版权信息等,可能指向下载该小工具的原始网站或者提供关于小工具的额外信息。 2. "shi...

    USB Gadget API for Linux

    •处理具有数十个端点的设备,以及只有两个固定功能端点的设备。可以编写小工具驱动程序,使它们易于移植到新硬件。•足够灵活,可以公开更复杂的USB设备功能,如多种配置、多种接口、复合设备和备用接口设置。•USB...

    windows phone 7 Gadget 模板

    在提供的压缩文件中,有两个重要的元素: 1. **WP7GadgetApplication1.zip**:这是一个包含了使用Gadget模板创建的示例项目的压缩文件。解压后,你可以看到Visual Studio 2010项目的所有结构,包括HTML文件(如...

    嵌入式Linux下USBGadget驱动框架研究

    在Linux系统中,USB驱动程序主要分为两种类型:主机侧(Host Side)和设备侧(Device Side)。主机侧驱动程序控制与主机相连的USB设备,利用这些设备提供的功能;而设备侧驱动程序则是指嵌入式Linux系统作为USB设备时所使用...

    smart-gadget-flutter:一个简单的演示抖动应用程序,显示了如何与Sensirion智能小工具进行通信

    智能小工具演示一个简单的演示抖动应用程序,显示了如何与Sensirion智能小工具进行通信。 该应用程序支持扫描智能小工具,连接到小工具并读取温度和湿度特征... 当前,我们注册了智能小工具的两个特征: 温度GUID('000

    Java Swing Gadget Kit-开源

    在Java Swing Gadget Kit中,我们可以看到两个主要的小工具:IP字段和类似速度计的小工具,以及LED小工具。这些组件都是为了提升用户体验而设计的,它们在各种应用场景下都能发挥重要作用。 1. IP字段:这是一个...

    支持显示双核的边栏小工具

    描述中提到的“双核的电脑边栏”,意味着这款小工具能够同时监测两个处理器核心的工作状态。双核CPU是由两个独立的处理单元组成的,每个核心都能执行单独的任务,提高计算机的并行处理能力。通过边栏小工具,用户...

    MD5编码器

    在本场景中,"gadget MD5编码器"指的是使用特定技术,可能是利用计算机内存中的指令序列(gadgets)来实现MD5计算的一个小程序或工具。这种实现可能涉及到代码高尔夫或安全领域的技术,如利用缓冲区溢出漏洞。 MD5...

    WIN7 农历 天气 2小工具

    标题中的“WIN7 农历 天气 2小工具”指的是两个专为Windows 7操作系统设计的小应用程序,分别用于显示农历和实时天气信息。这些小工具是Windows 7操作系统特性的一部分,允许用户在桌面上方便地查看这些关键的生活...

    win7多皮肤天气预报小工具

    在压缩包内的文件名称列表中,我们可以看到两个以.Gadget为扩展名的文件:“中国天气 皮肤多样.Gadget”和“中国天气 可改字体.Gadget”。这表明这两个文件是该天气预报小工具的不同版本或皮肤,可能分别对应着多样...

    桌面小工具

    在桌面小工具中集成了这两个搜索引擎,用户无需切换应用或打开浏览器,只需在小工具内输入关键词,就能快速进行网页搜索,大大提升了搜索效率。 此外,Naviget.Gadget 这个文件名可能是指该桌面小工具的具体实现或...

    win7实用小工具

    “Naviget.Gadget”可能是这个小工具的主程序文件名,或者是一个配置文件,用于设置和保存用户的相关偏好。在Windows 7中,小工具通常是以.gadget为扩展名的文件,它包含了小工具的所有组件,如界面元素、脚本代码和...

    2012考研倒计时()

    “win7&vista”表示该软件兼容这两个Windows操作系统版本。 在压缩包子文件的文件名称列表中,我们看到"Timer.Gadget",这很可能是这个考研倒计时软件的实际文件名。在Windows操作系统中,".Gadget"通常代表桌面小...

    VISTA/WIN7侧边栏CPU温度使用情况 支持INTEL和AMD

    压缩包内的两个文件,"Core-Temp-setup.exe"是Core Temp软件的安装程序,用户需要运行这个文件来安装CPU温度监测工具。"All_CPU_Meter_V3.3.gadget"则是侧边栏小工具本身,安装完Core Temp后,用户可以将这个小工具...

    gadget-checkin:OmniUpdate的小工具,只需单击一下,即可检入一个站点或所有站点中的所有文件

    该小工具将显示当前在每个站点中向用户签出的文件数,并为用户提供将其全部签回的选项。 版本v1.0.1 v1不再处于开发阶段,已经准备好迎接黄金时代! 此小工具已更新两年多了。 最新版本包含一些修复程序,这些修复...

Global site tag (gtag.js) - Google Analytics