`
hexiaodong
  • 浏览: 65194 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

SigmaWidgets发布新版本

阅读更多
该版本对前一版代码进行了重构,代码更精简,功能上也有所提升.详细功能列表如下:

跨浏览器,在ie和firefox下均可顺利运行。

嵌套的表头定义,不限层次深度。

列锁定,你可以指定表格最前面多少列是不允许横向滚动的。

标题锁定,假如需要纵向滚动,表格标题不会被隐藏。

简洁强大的列模型定义:你可以指定每一列数据来源、值类型、列宽度、列align方式、列标题。可申明的值类型暂时只包含:string、number、boolean、link、select、percent。其中number和percent还可以指定小数位格式,比如#.00表示强制保留两位小数。

支持ognl方式定义列的数据来源,假如,表格绑定的是person集合,person关联到部门,那么你可以把显示部门名称的这一列申明为name:”deparment.name”。

行聚合功能,允许客户代码设置某些列的聚合函数,控件能够根据聚合函数生成合计行。目前允许的聚合函数有:sum,avg,min,max。

三种界面绘制模式:绘制可见行、绘制所有行、自动判断模式。模式一允许你向控件绑定大量数据,但控件只绘制当前可见行,用户可以拖动纵向滚动条来查看其它行的数据。模式二让控件一次性绘制所有行,在适量数据情景下,该模式让控件运行更流畅,用户体验更佳。模式三让控件根据某个临界值自动判断按第一或者第二模式来绘制界面,让你的界面智能兼顾大数量和小数量情景下的用户体验。

排序功能,允许开发者指定哪些列是可以被排序的。当用户点击可以排序列的列标题时,控件对所有行进行排序。

只读属性,开发者可以指定某列或者整个表格的readonly属性。

表达式功能,允许列的数据根据表达式计算。

手动列宽调整功能,允许用户手动调整列宽度。

焦点单元格管理功能,按回车键,焦点下移一行。按Tab键,焦点右移一列。

单元格编辑功能,当焦点在某个可编辑单元格时,该单元格显示一个编辑器,编辑结束焦点移开单元格的时候,该单元格恢复为绘制器。

可插拔的值类型,你可以自定义一种值类型,并注册到表格。

可按列定义的单元格绘制器和编辑器,界面开发者可以随时为列定义特殊的绘制器和编辑器。

允许运行时增加行或者删除行。

两种行选择模式,可以为控件指定行的选择模式为单选或者多选模式。

可根据表达式计算某个列的单元格是否可编辑。

事件触发,当单元格的值被改变时,出发onCellValueChanged事件。

分页导航功能,允许界面开发者为控件指定一个PageControl对象,该对象有两个重要属性:pageSize用来控制每页行数,callback用来指定翻页时要回调的函数。如果翻页时是不需要查询条件的,callback可以设置为一个url,控件在翻页时自动在这个url附上pageSize和pageIndex参数。如果需要查询条件的,需要设置callback为一个函数对象,由callback执行条件查询,并返回page对象。

企业版功能:
分页打印支持,生成打印控制界面,允许开发者设置:表头是否在后序页面重复、页面的Head区域、Foot区域、可选纸张类型,允许用户选择纸张类型、可显示列。该功能需要第三方控件的支持。

分组聚合运算,指定表格根据哪些对象属性对对象的某些属性进行聚合运算(min,max,avg,sum),并把计算结果显示到分组合计行中。

分享到:
评论
37 楼 peifg 2007-06-11  
谢谢楼主这么快就回复,
第一个问题自己解决了

var sgrid_LinkRender = new function(){
this.paint = function(grid,row,col){
var data = row.getCellValue(col);
var t=[];
t[0] = '<a href="javascript:' + col.href + '('
t[1] = + row._rId
t[2] = ',\''+ data + '\');">'
t[3] =  data + '</a>'
return t.join('');
}
}
这个函数改成下面这个形式,就可以了

var sgrid_LinkRender = new function(){
this.paint = function(grid,row,col){
var data = row.getCellValue(col);
var t=[];
t[0] = '<a href="#" onClick="javascript:' + col.href + '('
t[1] = + row._rId
t[2] = ',\''+ data + '\');">'
t[3] =  data + '</a>'
return t.join('');
}
}

第二个问题 还请教楼主应该怎么修改,可否给我一份最新的修改过的版本
peifugen@gmail.com
或者企业版多少钱?
36 楼 hexiaodong 2007-06-11  
第二个问题已经解决了的。
第一个问题需要调试看看。

另外维护两个版本有点烦,我已经不再维护开源免费版了。需要用最新版的只能请你购买企业版。
35 楼 peifg 2007-06-10  
我有几个问题想请教啊:
第一:{name:"deleteFlag",caption:"删除操作",width:80,mode:"link",href:"del_conditions",sortable:false,align:'left'}

grid = new SigmaGrid("colList",context,columns);

function del_conditions(a,b,c){
alert("aaaaaaaaaaa");
}

当这个grid 是在一个普通的页面时,点击调用del_conditions这个函数正常,可是当这个页面是showModalDialog出来的时候,点击调用del_conditions就会长生错误。
请问这是怎么会事呢?

第二:
当grid = new SigmaGrid("colList",context,columns);中的colList这个DIV的长度不够时,div和grid都会出现滚动条,不美观。请问有没有办法缩短grid,因为grid只有两列的时候是那么长三列时也是那么长。
34 楼 zgdhj95 2007-06-07  
企业版多少钱?
33 楼 hexiaodong 2007-04-26  
动态改变某个select模式列的选项代码如下:
var col = grid.getColByName("sex");
col.options = sexoptions;


谢谢支持。
32 楼 lw178038 2007-04-26  
另外想问一下,关于列定义中可能会有select的属性options为一个变量,应该怎么定义呢?例如:
{name:"sex",caption:"性别",width:60,mode:"select",options:[ {id:"male",name:"男"},{id:"female",name:"女"}
]},
其中我定义了一个单独的变量sexoptions=[{id:"male",name:"男"},{id:"female",name:"女"}],请问怎么加入到这一列的options中去呢?
麻烦指点,谢谢!
31 楼 lw178038 2007-04-26  
查看源码后发现我的做法是老版本的,应该改为调用s_grid_onCellLink方法。一下写法对马:
function s_grid_onCellLink(a,b,c){
//得到当前行的数据
var rows = grid.rows;
alert(rows[b-1].rowData.staffNo);
}
再一次希望有这个出色的ui控件的api说明文档或者一个完整的例子,看源码超级累啊!
30 楼 lw178038 2007-04-26  
如果指定列中有link如下
{name:"staffNo",caption:"工号",width:60,mode:"link",href:"nameClicked"},
然后在定义方法nameClicked中并不能执行程序,能否有个链接的例子呢?在请帮忙如果有份API的简单介绍就更好了。目前正准备做个demo给老板看,如果老板有意向的话,会考虑付费请你作项目的技术支持的
29 楼 hexiaodong 2007-04-25  
打印功能在企业版提供,文档制作中
28 楼 zack 2007-04-25  
楼主是否能够提供详细一些的文档,这次改动还是比较大的,以前做的都要进行修改的。
27 楼 dafuh 2007-04-25  
能提供打印功能吗?
26 楼 wxn_yxm 2007-04-25  
有改进,值得学习.
25 楼 hexiaodong 2007-04-20  
呵呵,新版本允许一次性绘制。如果表格有几百行数据的话,表格列宽跟着表头列宽一起动的话,界面停滞现象严重。所以改成现在这样了
24 楼 pragmatic 2007-04-20  
楼主,改变列宽的时候下面的线怎么跟不上呀!感觉很不爽
23 楼 hexiaodong 2007-04-20  
formula:"p$('number')*p$('percent')" 
这里的number和percent指的就是对象属性名称,而不仅仅是列名
22 楼 pragmatic 2007-04-20  
一直期待楼主有新的更新,在此谢谢了!
21 楼 zack 2007-04-20  
但是我计算的时候要用到这个列的值,比如B列我不用显示,但是我在编辑A列的时候,要计算C列,计算公式为C = A*B
20 楼 hexiaodong 2007-04-20  
在sigmawidgets.htm中,行对象里面的department.id没有被显示出来吧。如果行对象中的某些属性不需要显示,那就不要定义到列头里面去。
19 楼 zack 2007-04-20  
下了最新版的,不过合计的刷新好像还是有点问题
如果该列没有合计 但是改了值后,会出现一个合计(好像是最后一个合计的值)
18 楼 zack 2007-04-20  
如何隐藏一个列
某些列我可能计算需要,但是不需要显示
有这个功能吗?

相关推荐

    SigmaWidgets使用手册和例子

    自定义样式时,可以直接修改此文件或在其基础上创建新的CSS文件。 - **reference.htm**: 这可能是组件的参考文档,提供了所有可用小部件的详细信息,包括属性、方法和事件,对开发者了解和使用 SigmaWidgets 非常...

    ListView上下翻页效果.zip

    ListView上下翻页效果

    Android项目之——漂亮的平台书架.zip

    Android项目之——漂亮的平台书架

    TestBrightness2.zip

    TestBrightness2

    00_Método_toBands.ipynb

    gee python 教程(西班牙语)

    (源码)基于Linux和GTK的系统监控与图形化显示.zip

    # 基于Linux和GTK的系统监控与图形化显示 ## 项目简介 本项目旨在通过分析Linux系统中的proc目录,提取并展示系统的关键信息,包括系统概况、进程信息和内存使用情况。通过使用GTK库,项目提供了一个图形化的用户界面,使用户能够直观地查看和监控系统的实时状态。 ## 项目的主要特性和功能 1. 系统信息展示 显示内核版本、系统启动时间等基本信息。 提供系统的主机名、CPU详细参数等信息。 2. 进程信息展示 显示所有进程的摘要信息,包括PID、CPU和内存使用率。 支持根据CPU使用率、内存使用率等参数对进程进行排序。 3. 内存信息展示 展示系统的内存使用情况,包括总内存、可用内存等详细参数。 4. 动态刷新 系统信息、进程信息和内存信息能够实时动态刷新,确保用户获取最新的系统状态。 5. 图形化界面 使用GTK库创建直观的图形界面,方便用户查看和操作。

    纯c语言迷宫源码.rar

    纯c语言迷宫源码

    c语言通讯录管理系统源码.rar

    c语言通讯录管理系统源码

    基于树莓派和GPT实现的多功能语音家庭助手

    功能列表 支持多种唤醒方式:语音唤醒,局域网消息唤醒,外设模块唤醒,远程唤醒 语音端点检测:自动检测语音截止点 语音识别:支持在线与离线双模式 文字转语音:舒适的人声 接续对话:完成交互对话全程只需唤醒一次 支持对话中断:可在任意时刻打断对话,重新提问 双引擎可选交互:接入GPT/星火大模型,支持聊天上下文,具有互联网搜索能力,并适时总结对话 聊天记忆:在程序结束后保存聊天内容,重新运行时自动加载 通知播报:手机上接收的消息(熄屏时)以自定义格式播报 音乐播放:获取QQ音乐个性推荐,支持调整音量,切换,暂停 音频闪避:在聊天交互/通知播报时自动减小音乐音量 日程设定:支持设定闹钟/倒计时,以及提醒事项 WebUI调参:可通过电脑和手机登录网页调参 外设控制:支持接入自定义设备(MQTT协议),配置相关文件可实现自动化 自动化智能家居:传入自定义状态,支持自定义场景触发自定义动作 远程控制:支持广域网MQTT设备控制 HomeAssistant:支持通过API控制HA下的设备

    c语言实现类似弹力球效果.rar

    c语言实现类似弹力球效果

    c语言实现的汉诺塔演示程序.rar

    c语言实现的汉诺塔演示程序

    c语言连连看游戏源码.rar

    c语言连连看游戏源码

    (源码)基于Arduino框架的自动称重系统.zip

    # 基于Arduino框架的自动称重系统 ## 项目简介 本项目是一个基于Arduino框架的自动称重系统。它利用Arduino硬件和Adafruit的ADS1115 ADC(模数转换器)库,实现了从负载单元读取重量数据并通过串行通信将数据传输到PC或其他设备的功能。项目还包含了LCD屏幕显示和LED指示灯的控制,以及对数据库的操作和Web交互的支持。 ## 项目的主要特性和功能 1. 硬件连接与通信: 项目使用了Arduino和ADS1115 ADC之间的串行通信,实现了从负载单元读取重量数据的功能。 2. 数据处理: 通过ADC读取的重量数据被处理并转换为可读的数值,然后通过串行端口发送到PC或其他设备。 3. 用户界面: 包含了LCD屏幕显示和LED指示灯的控制,用于实时显示重量数据或指示重量状态。 4. 数据库操作: 项目支持通过串行通信与数据库交互,实现数据的存储和查询。

    双鱼林jsp版超市信息管理系统.rar

    双鱼林jsp版超市信息管理系统

    C语言课程设计(成绩管理系统)源程序.zip

    C语言课程设计(成绩管理系统)源程序

    (源码)基于深度学习的投资策略优化系统.zip

    # 基于深度学习的投资策略优化系统 ## 项目简介 本项目是一个基于深度学习的投资策略优化系统,旨在通过分析和优化金融数据来提升投资决策的准确性和效率。项目涵盖了从数据获取、预处理、模型训练到结果评估的全流程,为投资者提供了一套完整的工具链。 ## 项目的主要特性和功能 1. 数据获取与处理 通过phase0.py获取金融数据。 使用phase1.py进行数据预处理和特征生成。 利用labelbasedgraph.py和labelbasedreturn.py进行数据标签计算。 2. 模型训练与评估 使用phase2.py进行模型训练和评估。 支持多种深度学习模型,如GraphCNN.py和MLP.py。 通过process.py管理模型训练和验证流程。 3. 结果可视化与分析 使用vision.py进行模型性能的可视化和评估。

    c语言课程设计-产品管理系统.zip

    c语言课程设计-产品管理系统

    技术资料分享BMP图片文件详解很好的技术资料.zip

    技术资料分享BMP图片文件详解很好的技术资料.zip

    C#ASP.NET手机端H5会议室预约系统源码 手机版会议室预约源码数据库 SQL2008源码类型 WebForm

    ASP.NET手机端H5会议室预约系统源码 手机版会议室预约源码 一、源码介绍 H5手机版会议室预约系统是一个高效快速便利的内部预约平台,让需要预定会议室的人能通过这个平 台发布预定,没有预定的人也能通过平台查看他人预定。通过后台添加账号即可登录预约平台,发布会 议室预定。 二、主要功能 后台管理包括 会议室信息管理,预约信息管理,用户信息管理。 前台手机版预约系统包括 日历查看预定信息,点击进入所选日期详细预约信息,预定会议室,我的预 约等功能模块。 后台采用模型管理功能可以使用后台对表结构进行维护,方便二次开发。 后台也可以增加部门,实现各部门之间管理员查看各自部门预约信息,用户信息等功能。

Global site tag (gtag.js) - Google Analytics