Java实时显示数据_extjs实现实时数据显示

Ext.namespace('Ext.ux');

Ext.ux.EmRealtimeDisplayPanel = function(treeNode, panelId, config) {

this.treeNode = treeNode;

this.panelId = panelId;

var temhum = new Ext.form.ComboBox({

name : 'temhunm',

fieldLabel : '状态',

allowBlank : false,

blankText : '请选择温湿度',

editable : false,

triggerAction : 'all',//all表示把下拉框列表框的列表值全部显示出来

store : new Ext.data.ArrayStore({

fields : [ 'name', 'value' ],

data : [ [ '温度', '1' ], [ '湿度', '2' ] ]

}),

mode : 'local',

displayField : 'name',

valueField : 'value',

width : 60

});

var storenode = new Ext.data.JsonStore({   //读配置文件

autoLoad:true,

url : path+"/wenshi/getnode",

root : "options",

fields : [ {

name : 'name'

}]

});

var node = new Ext.form.ComboBox({

fieldLabel : '节点',

allowBlank : false,

blankText : '请选择节点',

editable : false,

triggerAction : 'all',

store : storenode,

mode : 'local',

displayField : 'name',

valueField : 'name',

width : 60

});

var dataArr = new Array();

var store = new Ext.data.ArrayStore({

fields: ['data', 'time'],

data: dataArr

});

var varNodeId = '';//节点的id值

var taskStart = false;

//定时器里面的参数配置

var task = {

run: function(){

gridStore.load({

params: {

'nodeid' : varNodeId,

'tem'    :th

},

callback:function(r){

if(!(typeof(r[0])==='undefined')) {

dataArr.push([r[0].data.data, r[0].data.time]);

store.loadData(dataArr);

}

}

});

},

interval: 3000

};

var gridStore= new Ext.data.JsonStore({

fields:['time', 'data'],

autoLoad:true,

baseParams : {

'nodeid' : "",

'tem'    :""

},

url :path+'/wenshi/getShishiData',

root : "data"

});

var panel1= new Ext.Panel({

title: '实时曲线图显示',

width: 700,

height: 400,

smooth: true,

type: 'circle',

items: {

xtype: 'linechart',

url: 'extjs3/resources/charts.swf',

store: store,

xField: 'time',

yField: 'data',

xAxis: new Ext.chart.CategoryAxis({

title: '时间(秒)'//00 09:00 分钟 秒:毫秒

}),

yAxis: new Ext.chart.NumericAxis({

title: '数值'

})

},

tbar : [

{

xtype    : 'label',

text    : '请选择节点: '

},

node, {

xtype    : 'label',

text    : '请选择温湿度: '

},

temhum,

{

text    : '查询',

handler    : function(btn, event) {

var nodeid = node.getValue();

var tem = temhum.getValue();

if (nodeid == undefined || nodeid == ''||tem==''){

return;

} else {

dataArr = new Array();

varNodeId = nodeid;

th = tem;

//    alert(th);

if(!taskStart) {

Ext.TaskMgr.start(task);//定时执行代码

taskStart  =true;

}

}

}

}]

});

Ext.ux.EmRealtimeDisplayPanel.superclass.constructor.call(this, {

id : this.panelId,

title : this.treeNode.text,

layout        : 'fit',

closable : true,

preventBodyReset : true,

items : [panel1]

});

};

Ext.extend(Ext.ux.EmRealtimeDisplayPanel, Ext.Panel, {});

Ext.reg('emEmRealtimeDisplayPanel', Ext.ux.EmRealtimeDisplayPanel);

posted on 2013-03-08 17:02 杨军威 阅读(1802) 评论(0)  编辑  收藏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值