EXT做为与用户交互的前端,其功能可以概括为:生成用户界面,与用户实现交互,并与程序(PHP,.NET等)后台通信来完成与用户的交互。
生成用户界面 :EXT被广泛接受认可的原因之一便是他拥有良好的用户外观。
一个系统中最主要的功能便是实现CRUD(新增,读取,更新,删除),同时还有查询。为了将这些功能集中在一起,特意封装了一个EXT的CRUD面板,将这些常用的功能封装成一个类,以便创建易用性良好的界面。CRUD面板是从EXT的panel继承来的
/**
* 定义命名空间
*/
Ext.namespace("Mis.Ext");
/*
*CRUD面板基类
*/
//继承EXT的Panel,创建CRUD面板
Mis.Ext.CrudPanel=Ext.extend(Ext.Panel,{……});
//限于篇幅就不列出全部代码
EXT里的继承用的是Ext.extend(组件名,{实现代码});
要使用这个CRUD面板,需要继承实现它,我们举一个例子
//继承CrudPanel,创建管理面板
AddPlantPanel=Ext.extend(Mis.Ext.CrudPanel,{
id:"AddPlantPanel",//id号是表示一个面板的唯一标志
title:"管理",//面板的名称
baseUrl:"Plant.aspx",//数据源地址
//根据实际需要,重载编辑方法
edit:function()
{
CommentPanel.superclass.edit.call(this);//调用基类方法
var record=this.grid.getSelectionModel().getSelected();
if(record){
var id=record.get("plantID");
this.fp.form.setValues({ID:id});
}
},
//保存
save:function()
{
var id=this.fp.form.findField("ID").getValue();
this.fp.form.submit({
waitMsg:'正在保存。。。',
url:this.baseUrl+"?cmd="+(id?"Update":"Save"),
method:'POST',
success:function(form_instance_create, action) {
Ext.MessageBox.alert('友情提示', action.result.info);
},
failure:function(form_instance_create1, action1){
Ext.MessageBox.alert('友情提示', action1.result.info);
},
scope:this
});
},
//删除
removeData:function(){
this.remove('plantID');
} ,
//创建新建和修改的表单
createForm:function(){
var formPanel=new Ext.form.FormPanel({
frame:true,
labelWidth:60,
labelAlign:'right',
items:[{
xtype:'fieldset',
title:'基本信息',
autoHeight:true,
defaults:{xtype:"textfield",width:300},
items:[
{xtype:"hidden",name:"ID"},
{fieldLabel:'编号',name:'plantID'},
{fieldLabel:'名称',name:'plantName'}]
}]
});
return formPanel;
},
//创建放置表单的窗口
createWin:function()
{
return this.initWin(438,180,"管理");
//创建新增、添加面板
},
//指定JSON数据的mapping
storeMapping:["plantID","plantName"],
//初始化界面
initComponent : function(){
var sm = new Ext.grid.CheckboxSelectionModel();
this.cm=new Ext.grid.ColumnModel([new Ext.grid.RowNumberer(),//获得行号
sm,
//定义GRID的表头信息
{header: "编号", sortable:true,width: 100, dataIndex:"plantID"},
{header: "名称", sortable:true,width: 200, dataIndex:"plantName"}
]);
AddPlantPanel.superclass.initComponent.call(this);
}
});
这样就完成了一个能应用到实际中的CRUD面板
分享到:
相关推荐
**Python库nnabla_ext_cuda100简介** nnabla_ext_cuda100是针对Python编程语言的一个扩展库,专为在CUDA 10.0环境下加速深度学习计算而设计。这个库是nnabla库的一个组成部分,nnabla是一个开源的深度学习框架,由...
nnabla_ext_cuda100-1.21.0-cp36-cp36m-win_amd64.whl 是一个针对Python编程语言的扩展库,特别设计用于利用CUDA 100版本的GPU加速计算。这个库是nnabla的一个版本,nnabla是一个开源深度学习框架,它提供了高效的...
**Python库nnabla_ext_cuda** 是一个专为Python编程语言设计的深度学习库扩展,其核心功能是针对NVIDIA CUDA平台提供优化的计算能力。这个压缩包文件 "nnabla_ext_cuda-1.0.14-cp35-cp35m-win_amd64.whl" 是为Python...
资源来自pypi官网。 资源全名:nnabla_ext_cuda110-1.22.0-cp36-cp36m-win_amd64.whl
资源分类:Python库 所属语言:Python 使用前提:需要解压 资源全名:nnabla_ext_cuda101-1.4.0-cp35-cp35m-win_amd64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
**Python库nnabla_ext_cuda110-1.22.0-cp36-cp36m-win_amd64.whl详解** nnabla_ext_cuda110是针对Python开发的一个扩展库,主要功能是为深度学习框架nnabla提供了对NVIDIA CUDA 11.0的优化支持。这个版本号1.22.0...
**Python库nnabla_ext_cuda80介绍** `nnabla_ext_cuda80-1.0.17-cp27-cp27m-win_amd64.whl` 是一个专门为Python 2.7版本设计的二进制轮(wheel)文件,用于在Windows操作系统上运行,并且支持AMD64架构的计算机。这...
资源分类:Python库 所属语言:Python 资源全名:nnabla_ext_cuda100-1.23.0-cp36-cp36m-win_amd64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源来自pypi官网。 资源全名:nnabla_ext_cuda80-1.0.17-cp27-cp27m-win_amd64.whl
资源来自pypi官网。 资源全名:nnabla_ext_cuda100-1.0.17-cp37-cp37m-win_amd64.whl
资源来自pypi官网。 资源全名:nnabla_ext_cuda-1.0.14-cp35-cp35m-win_amd64.whl
- 具体步骤为:关闭VS2008,使用注册表编辑器打开`HKEY_CURRENT_USER\Software\WholeTomato\VisualAssistX\VANet9`,找到`ExtSource`项目,将其值修改为包含`.cu; .cuh`,然后重启VS2008。 #### 四、创建CUDA工程...
build_ext.set_cuda_home('/path/to/cuda-9.0') setup(..., ext_modules=[ext], cmdclass={'build_ext': build_ext}) ``` 这里,`set_cuda_home`方法指定了CUDA的安装路径,确保编译时使用的是正确的CUDA版本。 ...
- 打开注册表编辑器,定位至`[HKEY_CURRENT_USER\Software\WholeTomato\VisualAssistX\VANet10]`,修改`ExtSource`键值,添加`.cu`和`.cuh`。 ##### 2. 添加对CUDA关键字的识别 - 在Visual Studio中选择“VAssistX...
- 修改`VAssistX`的注册表项`[HKEY_CURRENT_USER\Software\Whole Tomato\VisualAssist X\VANet10]\ExtSource`,添加`.cu`和`.cuh`扩展名。 - 在VS中,通过`VAssistX`->`Options`->`Projects`->`C/C++ Directories`...