彩票走势图

WebUI Studio如何选择WebScheduler WebContextMenu中的资源

原创|其它|编辑:郝浩|2012-10-26 14:10:31.000|阅读 189 次

概述:本文描述如何选择或取消选择 WebScheduler WebContextMenu 中的所有资源。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

本文描述如何选择或取消选择WebUI Studio WebScheduler WebContextMenu 中的所有资源。

下面的说明步骤可实现基于给定样本的上述功能:

1、添加 WebScheduler 控件,并将其数据库绑定。

这篇文章的示例使用的是 WebScheduler_Software.mdb。

2、添加 WebContextMenu 控件并设置 ControlId 属性为“WebScheduler1_RF”

3、在 WebContextMenu 中添加两个菜单项。

- 在第一次菜单项,名称属性设置为“mnuSelectAll”,文本属性设置为“选择全部”
- 在第二个菜单项,名称属性设置为“mnuDeSelectAll”,文本属性设置为“取消选择所有”

4、在 WebContextMenu 的 OnMenuItemClick 客户端事件放置下面的代码:

function ResourceContextMenu_OnMenuItemClick(controlId, menuItem) {
    var ResourceContextMenu = ISGetObject(controlId);
    var WebScheduler1 = ISGetObject("WebScheduler1");
    var Resources = WebScheduler1.Resources;
    var length = Resources.length;

    switch (menuItem.Name) {
        case "mnuSelectAll":
            for (var i = 0; i < length; i++) {
                var resource = Resources[i];
                WebScheduler1.ShowResources(resource);
                isShow = true;
            }
            break;

        case "mnuDeSelectAll":
            for (var i = 0; i < length; i++) {
                if (WebScheduler1.IsInSplitViewMode == true && i == 0) {
                    continue;
                }
                var resource = Resources[i];
                WebScheduler1.HideResources(resource);
                isShow = false;
            }
            break;

        default:
            break;
    }

    return true;
}

5、在WebContextMenu 的 OnShowMenu ,放置下面的代码:

ResourceContextMenu_OnShowMenu(controlId, menu, x, y, width, height) {
    var ResourceContextMenu = ISGetObject(controlId);
    var cursor = getPosition(event);

    if (isShow) {
        menu.Items.GetNamedItem("mnuSelectAll").Hide();
        menu.Items.GetNamedItem("mnuDeSelectAll").Show();
    }
    else {
        menu.Items.GetNamedItem("mnuSelectAll").Show();
        menu.Items.GetNamedItem("mnuDeSelectAll").Hide();
    }

    return new OffsetLocation(cursor.x, cursor.y);
}

6、使用下面的代码,实现在选择WebScheduler的一个事件时,获得光标的位置:

var isShow = true;

function getPosition(event) {
    var cursor = { x: 0, y: 0 };
           
    if (IS.moz) {
        cursor.x = event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
        cursor.y = event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
    }
    else {
        cursor.x = event.clientX;
        cursor.y = event.clientY;
    }
    return cursor;
}

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:慧都控件网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP