一、写一个按钮

  注意id

    {
id: 'ListEdit',
text:'编辑',
iconCls:'x-fa fa-edit'
}

二、写新建的页面

  下面我新建的是表单,有几点需要注意的:

  ① 因为表单是多列的,所以layout用了column(自己试的,不一定是最好的写法);如果只有一列,layout用form。

  ② name可以忽略,combo只是有个样子。

Ext.define('report.view.system.organization.ListEdit',{
extend:'Ext.form.FormPanel',
xtype:'ListEdit', layout:'column',
defaults:{
style:'float:left;margin:4px;',
columnWidth: 0.48
},
  //layout:'form',
defaultType:'textfield',
fieldDefaults:{
labelAlign:'right',
labelWidth:84
}, items:[
{
fieldLabel: '上级编码',
xtype: 'combo',
name: 'user',
emptyText: '仓库',
},
{
fieldLabel: '状态',
xtype: 'combo',
name: 'user',
emptyText: '有效',
},
{
fieldLabel: '组织架构编码',
name: 'user',
},
{
fieldLabel: '组织架构名称',
name: 'user',
},
{
fieldLabel: '联系人',
name: 'user',
},
{
fieldLabel: '联系方式',
name: 'user',
},
{
fieldLabel: '服务器IP',
name: 'user',
},
{
fieldLabel: '数据库名',
name: 'user',
},
{
fieldLabel: '登录名',
name: 'user',
},
{
fieldLabel: '密码',
name: 'user',
},
{
fieldLabel: '地址',
name: 'user',
columnWidth: 0.96
},
{
fieldLabel: '备注',
name: 'user',
columnWidth: 0.96
}
]
})

三、写controller

  1、获取页面,并添加保存和关闭的按钮

    var editForm = new Ext.create('report.view.system.organization.ListEdit',{
buttons:[
{
text:'保存',
},
{
text:'关闭',
handler:function(){
EditWin.hide();
}
}
]
});

  2、通过id获取到编辑按钮,并给它添加点击事件

     var editBtn = Ext.ComponentManager.get('ListEdit');

        editBtn.on('click', ListEdit);
function ListEdit() {
editForm.form.reset();
EditWin.show();
}

  3、设置新增窗口

    var EditWin = new Ext.Window({
title:'编辑组织架构',
modal: true,//遮罩层
width:480,
closeAction:'hide',//若不写这个,x只能点一次,然后就没有然后了
resizable: false,//默认是true
plain: true,
//buttonAlign: 'center',
items: editForm
})

  *controller全部代码

Ext.define('report.controller.system.organization.OrganizationController', {
extend: 'Ext.app.ViewController', alias: 'controller.Organization', init:function(){
// *********新建**********
var editForm = new Ext.create('report.view.system.organization.ListEdit',{
buttons:[
{
text:'保存',
},
{
text:'关闭',
handler:function(){
EditWin.hide();
}
}
]
});
//获取到这个按钮
var editBtn = Ext.ComponentManager.get('ListEdit');
//修改按钮点击事件
editBtn.on('click', ListEdit); //添加按钮单击事件
function ListEdit() {
editForm.form.reset();
EditWin.show();
}
//新增窗口
var EditWin = new Ext.Window({
title:'编辑组织架构',
modal: true,//遮罩层
width:480,
closeAction:'hide',//若不写这个,x只能点一次,然后就没有然后了
resizable: false,//默认是true
plain: true,
//buttonAlign: 'center',
items: editForm
})
}
});

四、引用controller

最后在页面引用controller

controller: 'Organization',

完。

用extjs6.0写一个点击新建窗口的功能的更多相关文章

  1. Extjs6(二)——用extjs6.0写一个系统登录及注销

    本文基于ext-6.0.0 一.写login页 1.在view文件夹中创建login文件夹,在login中创建文件login.js和loginController.js(login.js放在class ...

  2. Extjs6(三)——用extjs6.0写一个简单页面

    本文基于ext-6.0.0 一.关于border布局 在用ext做项目的过程中,最常用到的一种布局就是border布局,现在要写的这个简单页面也是运用border布局来做.border布局将页面分为五 ...

  3. 从0写一个Golang日志处理包

    WHY 日志概述 日志几乎是每个实际的软件项目从开发到最后实际运行过程中都必不可少的东西.它对于查看代码运行流程,记录发生的事情等方面都是很重要的. 一个好的日志系统应当能准确地记录需要记录的信息,同 ...

  4. 自动化测试(三)如何用python写一个函数,这个函数的功能是,传入一个数字,产生N条邮箱,产生的邮箱不能重复。

    写一个函数,这个函数的功能是,传入一个数字,产生N条邮箱,产生的邮箱不能重复.邮箱前面的长度是6-12之间,产生的邮箱必须包含大写字母.小写字母.数字和特殊字符 和上一期一样 代码中间有段比较混沌 有 ...

  5. 基于vue框架手写一个notify插件,实现通知功能

    简单编写一个vue插件,当点击时触发notify插件,dom中出现相应内容并且在相应时间之后清除,我们可以在根组件中设定通知内容和延迟消失时间. 1. 基础知识 我们首先初始化一个vue项目,删除不需 ...

  6. 使用TypeScript给Vue 3.0写一个指令实现组件拖拽

    最近在用vue3重构后台的一个功能.一个弹窗组件,弹出一个表单.然后点击提交. 早上运维突然跑过来问我,为啥弹窗挡住了下边的表格的数据,我添加的时候,都没法对照表格来看了.你必须给我解决一下. 我参考 ...

  7. 汇编入门——使用DOSBox写一个HelloWorld以及相关软件安装

    0.0.0) 在D盘建立一个ASM文件夹 0.0.1) 放入所需要的文件 1所标示的红色框为必须要存在的文件,要处理汇编文件.百度网盘中下载. 2自己编写的汇编(asm)文件. 3编译汇编自己生成的文 ...

  8. 12.源码分析—如何为SOFARPC写一个序列化?

    SOFARPC源码解析系列: 1. 源码分析---SOFARPC可扩展的机制SPI 2. 源码分析---SOFARPC客户端服务引用 3. 源码分析---SOFARPC客户端服务调用 4. 源码分析- ...

  9. 分布式系统中的RPC请求经常出现乱序的情况 写一个算法来将一个乱序的序列保序输出

    分布式系统中的RPC请求经常出现乱序的情况.  写一个算法来将一个乱序的序列保序输出.例如,假设起始序号是1,对于(1, 2, 5, 8, 10, 4, 3, 6, 9, 7)这个序列,输出是:  1 ...

随机推荐

  1. Java 快排

    基于分治法的快排,用递归实现. 首先讲一下实现的过程. 1.在数组中取一个数作为基准,所谓的基准就是用来对比的数. 2.然后在数组中从后往前找,找到一个逆序数为止,找到之后就把它的值赋值到基准数的位, ...

  2. Tp框架 之对控制器的一些操作等

    在浏览器中输入tp框架入口文件的地址,如图 要注意,localhost/后面跟的是www的下一级,tp文件的上一级,因为我直接把tp文件做成了www目录的下一级,所以我写的地址localhost后面跟 ...

  3. strtok、strtok_s、strtok_r 字符串分割函数

    1.strtok函数 函数原型:char * strtok (char *str, const char * delimiters); 参数:str,待分割的字符串(c-string):delimit ...

  4. 百度地图API-控件

    初始化百度地图的基础方法我们已经学会了,那么,想让我们的地图展示的更美观,体验度更好,自然离不开百度地图API给我们提供的丰富的插件.同时呢,我们还可以通过Control类自定义控件.那么,百度地图A ...

  5. 1593: [Usaco2008 Feb]Hotel 旅馆

    1593: [Usaco2008 Feb]Hotel 旅馆 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 391  Solved: 228[Submit ...

  6. UIBeaierPath 与 CAShapeLayer

    CAShapeLayer是基于贝塞尔曲线而存在的, 如果没有贝塞尔曲线提供路径来画出图形, CAShapeLayer就没有存在的意义, CAShapeLayer可以使得不用在   drawRect:方 ...

  7. Python自动化开发(三):循环次数控制、常用数据类型、字符串格式化、列表常用操作、列表的后续操作

    计数器的作用可以在死循环中,符合条件的情况下做自动退出中断 #!/usr/bin/env python # _*_ coding: utf-8 _*_ # @Time : 2017/3/14 11:2 ...

  8. java之JDK的环境变量配置

    JDK是什么? JDK是整个java开发的核心,它包含了JAVA的运行环境,JAVA工具和JAVA基础的类库. JDK包含的基本组件包括 java –--------> 运行编译后的java程序 ...

  9. 源码分析Android Handler是如何实现线程间通信的

    源码分析Android Handler是如何实现线程间通信的 Handler作为Android消息通信的基础,它的使用是每一个开发者都必须掌握的.开发者从一开始就被告知必须在主线程中进行UI操作.但H ...

  10. 【iOS】7.4 定位服务->2.1.3.2 定位 - 官方框架CoreLocation 功能2:地理编码和反地理编码

    本文并非最终版本,如果想要关注更新或更正的内容请关注文集,联系方式详见文末,如有疏忽和遗漏,欢迎指正. 本文相关目录: ================== 所属文集:[iOS]07 设备工具 === ...