转自http://www.blogjava.net/hansdyj/articles/175660.html
单击Button弹出和双击Grid弹出,获取动画焦点的方式不同
index.js
HelloWindow = function () {
var win = this ;
var grid = new HelloGrid();
HelloWindow.superclass.constructor.call( this , {
title : 'Hello Window',
layout : 'fit',
width : 500 ,
height : 300 ,
closeAction : 'hide',
plain : true ,
items : [ {
xtype : 'tabpanel',
region : 'center',
activeTab : 0 ,
border : false ,
items : [ new Ext.Panel( {
title : 'The first panel',
autoTabs : true ,
activeTab : 0 ,
deferredRender : false ,
border : false ,
html : 'the first panel'
} ), grid]
} ],
buttons : [ {
text : 'Submit',
disabled : true
} , {
text : 'Close',
handler : function () {
win.hide();
}
} ]
} );
}
Ext.extend(HelloWindow, Ext.Window, {} );
HelloBtn = function () {
HelloBtn.superclass.constructor.call( this , {
text : 'Hello Button'
,
} );
}
Ext.extend(HelloBtn, Ext.Button, {} );
HelloGrid = function () {
var myData = [
['3m Co', 71.72 , 0.02 , 0.03 , ' 9 / 1 12 :00am'],
['Alcoa Inc', 29.01 , 0.42 , 1.47 , ' 9 / 1 12 :00am'],
['Altria Group Inc', 83.81 , 0.28 , 0.34 , ' 9 / 1 12 :00am'],
['American Express Company', 52.55 , 0.01 , 0.02 , ' 9 / 1 12 :00am'],
['American International Group, Inc.', 64.13 , 0.31 , 0.49 ,
' 9 / 1 12 :00am'],
['AT & T Inc.', 31.61 , - 0.48 , - 1.54 , ' 9 / 1 12 :00am'],
['Boeing Co.', 75.43 , 0.53 , 0.71 , ' 9 / 1 12 :00am'],
['Caterpillar Inc.', 67.27 , 0.92 , 1.39 , ' 9 / 1 12 :00am'],
['Citigroup, Inc.', 49.37 , 0.02 , 0.04 , ' 9 / 1 12 :00am'],
['E.I. du Pont de Nemours and Company', 40.48 , 0.51 , 1.28 ,
' 9 / 1 12 :00am'],
['Exxon Mobil Corp', 68.1 , - 0.43 , - 0.64 , ' 9 / 1 12 :00am'],
['General Electric Company', 34.14 , - 0.08 , - 0.23 , ' 9 / 1 12 :00am'],
['General Motors Corporation', 30.27 , 1.09 , 3.74 , ' 9 / 1 12 :00am'],
['Hewlett - Packard Co.', 36.53 , - 0.03 , - 0.08 , ' 9 / 1 12 :00am'],
['Honeywell Intl Inc', 38.77 , 0.05 , 0.13 , ' 9 / 1 12 :00am'],
['Intel Corporation', 19.88 , 0.31 , 1.58 , ' 9 / 1 12 :00am'],
['International Business Machines', 81.41 , 0.44 , 0.54 ,
' 9 / 1 12 :00am'],
['Johnson & Johnson', 64.72 , 0.06 , 0.09 , ' 9 / 1 12 :00am'],
['JP Morgan & Chase & Co', 45.73 , 0.07 , 0.15 , ' 9 / 1 12 :00am'],
['McDonald\'s Corporation', 36.76 , 0.86 , 2.40 , ' 9 / 1 12 :00am'],
['Merck & Co., Inc.', 40.96 , 0.41 , 1.01 , ' 9 / 1 12 :00am'],
['Microsoft Corporation', 25.84 , 0.14 , 0.54 , ' 9 / 1 12 :00am'],
['Pfizer Inc', 27.96 , 0.4 , 1.45 , ' 9 / 1 12 :00am'],
['The Coca - Cola Company', 45.07 , 0.26 , 0.58 , ' 9 / 1 12 :00am'],
['The Home Depot, Inc.', 34.64 , 0.35 , 1.02 , ' 9 / 1 12 :00am'],
['The Procter & Gamble Company', 61.91 , 0.01 , 0.02 , ' 9 / 1 12 :00am'],
['United Technologies Corporation', 63.26 , 0.55 , 0.88 ,
' 9 / 1 12 :00am'],
['Verizon Communications', 35.57 , 0.39 , 1.11 , ' 9 / 1 12 :00am'],
['Wal - Mart Stores, Inc.', 45.45 , 0.73 , 1.63 , ' 9 / 1 12 :00am']];
// example of custom renderer function
function change(val) {
if (val > 0 ) {
return ' < span style = " color:green; " > ' + val + ' </ span > ';
} else if (val < 0 ) {
return ' < span style = " color:red; " > ' + val + ' </ span > ';
}
return val;
}
// example of custom renderer function
function pctChange(val) {
if (val > 0 ) {
return ' < span style = " color:green; " > ' + val + ' %</ span > ';
} else if (val < 0 ) {
return ' < span style = " color:red; " > ' + val + ' %</ span > ';
}
return val;
}
// create the data store
this .store = new Ext.data.SimpleStore( {
fields : [ {
name : 'company'
} , {
name : 'price',
type : ' float '
} , {
name : 'change',
type : ' float '
} , {
name : 'pctChange',
type : ' float '
} , {
name : 'lastChange',
type : 'date',
dateFormat : 'n / j h:ia'
} ]
} );
this .store.loadData(myData);
HelloGrid.superclass.constructor.call( this , {
columns : [ {
id : 'company',
header : " Company " ,
width : 160 ,
sortable : true ,
dataIndex : 'company'
} , {
header : " Price " ,
width : 75 ,
sortable : true ,
renderer : 'usMoney',
dataIndex : 'price'
} , {
header : " Change " ,
width : 75 ,
sortable : true ,
renderer : change,
dataIndex : 'change'
} , {
header : " % Change " ,
width : 75 ,
sortable : true ,
renderer : pctChange,
dataIndex : 'pctChange'
} , {
header : " Last Updated " ,
width : 85 ,
sortable : true ,
renderer : Ext.util.Format.dateRenderer('m / d / Y'),
dataIndex : 'lastChange'
} ],
stripeRows : true ,
autoExpandColumn : 'company',
height : 350 ,
width : 600 ,
title : 'Hello Grid'
} );
}
Ext.extend(HelloGrid, Ext.grid.GridPanel, {} );
Ext.onReady( function () {
var helloBtn = new HelloBtn();
helloBtn.render('helloBtn');
helloBtn.on('click', function (e) {
win.show( this .getEl().dom);
} );
var helloGrid = new HelloGrid();
helloGrid.render('helloGrid');
helloGrid.on('rowdblclick', function (obj,rowIndex,e) {
win.show(Ext.get(e.target).dom);
} );
var win = new HelloWindow();
} );
index.html
<html>
<head>
<title>index.html</title>
<!-- ext -->
<script type="text/javascript" src="./ext2/js/ext-base.js"></script>
<script type="text/javascript" src="./ext2/js/ext-all-debug.js"></script>
<link rel="stylesheet" type="text/css" href="./ext2/css/ext-all.css" />
<script type="text/javascript" src="javascript/index.js"></script>
</head>
<body style="padding:20px;">
<div id="helloBtn"></div><br>
<div id="helloGrid"></div>
</body>
</html>
分享到:
相关推荐
EXT 2.0 MessageBox 和 JavaScript 弹出窗口是两种在 Web 应用程序中常见的用户交互方式。它们允许开发者向用户展示信息、询问问题或获取输入。EXT 是一个流行的 JavaScript 框架,特别是它的 EXT JS 库,用于构建富...
标题提到的“非常炫的js弹出窗口”是一个利用JavaScript技术实现的动态对话框,它可以提供丰富的用户交互体验,与EXT框架的效果相媲美。 EXT是一个强大的JavaScript库,专门用于构建富客户端应用,它包含了一系列...
而其它弹出 窗口(比如:JQuery,ExtJs,Mootools,还有其它弹出窗口等)CUP的占有率都在50%左右,最高60%以上。 窗口样式更改简便:组件采用的是QQ2009窗口的界面,虽说不上很漂亮,但也不算难看(本个界面设计...
在Ext JS框架中,开发人员经常遇到需要在页面中实现各种交互设计,其中包括弹出窗口的使用。然而,有些情况下,弹出窗口可能并不符合用户的使用习惯或设计美学,因此寻找替代方案变得必要。本文将探讨如何在Ext环境...
EXT弹出框的改装可能涉及以下几个方面: 1. **样式修改**:EXT使用SASS(Syntactically Awesome Style Sheets)进行样式定制。可以通过修改EXT的默认主题或者创建自定义主题来改变窗口的外观。例如,更改窗口边框、...
实现EXTJS弹出框在n秒后自动消失,我们可以利用EXTJS的定时器(Ext.util.DelayedTask)和弹出框(Ext.MessageBox)的配置选项。下面我们将详细讨论如何实现这个功能。 首先,EXTJS的弹出框主要通过`Ext.MessageBox....
本文将详细探讨如何在ExtJS中实现一个窗口(`Ext.window`)从右下角动态弹出并隐藏的功能,类似于即时通讯软件(如MSN)中的登录提醒。 #### 二、关键技术点 ##### 1. **自定义窗口类** 为了实现上述需求,首先...
在探讨Extjs TriggerField在弹出窗口显示问题之前,我们有必要了解Extjs TriggerField本身。Extjs TriggerField是Extjs框架下的一个组件,它继承自TextField,并且拥有一个附加的触发按钮,该触发按钮可以用于打开一...
以下是改变ExtJS默认字体大小的几种方法: 1. 修改样式文件:最直接的方法是编辑`ext-all.css`样式文件。将文件中所有涉及到字体大小为11px的部分替换为所需的值,如12px。如果要增大字体到15px,不仅需要替换...
总结来说,"Ext tree 结合dwr 调用后台数据"是前端与后端高效协作的一种实践方式,通过结合使用Ext JS的Tree组件和DWR,我们可以构建出交互性强、响应速度快的Web应用。理解并掌握这种技术,对于提升Web应用的用户...
关键字:故事图,时间轴控件,CSS弹出窗口,真棒字体,统计图图表(饼图/栏),图层切换器,控制栏,维基百科图层,图例控件,搜索,动画,撤消/重做机制 入门 NPM软件包 ol-ext作为ES6模块( )和纯js( )存在。 ...
在这个场景中,"Ext的弹出对话框1111"指的是如何在Ext环境中设置和使用对话框功能。 首先,环境搭建是使用Ext的第一步。你需要下载ExtJS库,这通常包含了一个压缩包,其中包含了必要的JavaScript文件和CSS样式表。...
在EXT中,有三种主要的方式提交数据到服务器,这些方法主要涉及到前端与后端之间的交互,用于处理用户输入的数据并将其发送到服务器进行处理。以下是EXT提交服务器的三种方式的详细说明: 1. **EXT的Form表单AJAX...
3. **链式调用**:由于Ext.fx支持链式调用,因此可以方便地组合多个动画: ```javascript someElement.animate({ duration: 500, opacity: 0 }).then({ duration: 500, x: '+=100' }); ``` 三、高级特性 1...
本教程将通过七个步骤,介绍如何使用DirectJNgine和Ext Direct来调用Java服务器端的方法,帮助你理解和实践这两种技术。 第一步:了解DirectJNgine和Ext Direct DirectJNgine是基于Spring框架的,它提供了对Ext ...
这个资源包,"ExtJs 主题大全 + 调用实例JS文件",是针对那些希望为他们的ExtJs应用增添多样性和专业外观的开发者们的宝贵资料。 首先,我们来详细了解ExtJs的主题。在ExtJs中,主题是决定应用程序视觉风格的关键...
ext.net gridpanel 弹出窗
全书由一个可以引领读者快速入门的“Hello World”示例开篇,紧接着对Ext JS的事件、核心组件、表格和表单等各种控件、树形结构、拖放、弹出窗口、布局、数据存储和传输、实用工具和扩展等进行了详细讲解,最后一个...
"ext官方21种样式"指的是EXT库中预设的21种不同的主题或样式,这些样式可以极大地改变EXT组件的外观,以适应不同项目的需求和用户界面设计。 EXT的样式主要通过Sass(Syntactically Awesome Style Sheets)语言来...