Ext.ux.grid.RowEditor的bug修改

2023-11-10

声明:此bug针对ext.3.3.0版本,其他版本是否有此bug不清楚。

1,找到文件ext-3.3.0\examples\ux\RowEditor.js

2,定位到上述文件中的函数verifyLayout 和函数resizeColumn

3,贴出上述两函数的代码(修改过的,带注释):

verifyLayout: function(force) {

        if (this.el && (this.isVisible() || force === true)) {

            var row = this.grid.getView().getRow(this.rowIndex); //获得行

            this.setSize(Ext.fly(row).getWidth(), Ext.isIE ? Ext.fly(row).getHeight() + 9 : undefined); //设置roweditor宽高

            var cm = this.grid.colModel,

                fields = this.items.items;

            for (var i = 0, len = cm.getColumnCount(); i < len; i++) {

                if (!cm.isHidden(i)) {//调整非隐藏列

                    var adjust = 0;

                    if (i === (len - 1)) {//最后一列

                        adjust += 3; // outer padding

                    } else {

                        adjust += 1;

                    }

                    fields[i].show();

                    // zxp fixed the bug 0004299 2011-08-30 begin

                    aw = cm.getColumnWidth(i) - adjust;

                    fields[i].setWidth(aw); //当一个组件渲染后,这个函数改变的是封装此组件的el的style属性width,并不修改组件的width属性

                    fields[i].width = aw;//解决roweditor拖动列时错位的BUG

                    //zxp fixed the bug 0004299 2011-08-30 end

                } else {

                    fields[i].hide();

                }

            }

            this.doLayout();//布局的时候,计算的是组件的width属性,比如组件com,计算com.width;所以在未修改此bug时,执行完此函数后,位置没变;修改bug后,执行此函数位置跟着变动。注:doLayout函数的功能说粗点就是布局,说细点他完成大小、位置的调整。

            // zxp fixed the bug 0004299 2011-08-30 begin

            //this.resizeColumn();//解决roweditor拖动列时错位的BUG     //看了doLayout函数后的行注释,就知道这里为什么要注释掉resizeColumn函数了

            //zxp fixed the bug 0004299 2011-08-30 end

            this.positionButtons();

        }

    }

    /**

    * 调整列的位置

    */

    resizeColumn: function() {

        var cm = this.grid.colModel,

            fields = this.items.items;

        if (this.elements && this.isVisible() && this.editing) {

            for (var j = 0, len = cm.getColumnCount(); j < len; j++) {

                if (j != 0) {

                    var position = fields[j - 1].getPosition();

                    var width = fields[j - 1].getWidth();//返回的是封装此组件的el的style属性width

                    fields[j].setPagePosition(position[0] + width, position[1]);

                }

            }

            this.doLayout();//调整大小/位置后必须重新布局

        }

    }

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ext.ux.grid.RowEditor的bug修改 的相关文章

  • 优化数据可视化 Web 应用程序的性能

    我正在重写 3 年前编写的数据可视化网络工具 从那时起 浏览器的 JavaScript 引擎变得更快 所以我正在考虑将部分工作从服务器转移到客户端 在页面上 数据在表格和地图 或图表 中可视化 它使用相同的数据 但以不同的方式 因此准备显示
  • 使用画布元素作为文本区域

    我正在寻找有关如何使用类似于文本区域的画布元素的直接描述 我见过这样的项目Ace http ace ajax org 只是想知道如何像文本区域一样写入该区域 只是纯文本 没有什么花哨的 提前致谢 Ace 曾经是 Mozilla Skywri
  • 茉莉花单元测试 - 测试对象的未定义属性

    我有以下声明 expect A BAR name toEqual foo 由于我的对象 A 具有顶级属性 BAR 并且 bar 具有值 foo 传递 我想测试我的结构以确认属性 NONEXISTINGPROP 尚未定义 例如 expect
  • 1分30秒倒计时器javascript

    我有代码 但它适用于 2 分钟计时器 我需要将其修改为 1 分 30 秒计时器 我已经尝试过 但未能从 1 30 开始计时器 因为我是这一行的初学者 并且想学习如何做到这一点 这是代码 div div
  • Visual Studio IDE 中功能后的空间

    如何设置 Visual Studio 中的设计以在我的 javascript 函数后面放置一个空格 目前 当我按下返回键时 我得到了这个 var myfunc function 当我想要这个的时候 var myfunc function 知
  • Amcharts 图表 - 图表列到自定义 URL 的超链接以在新选项卡/窗口中打开

    我正在尝试制作一个 amcharts 图表 其中的列链接到自定义网址 并希望网址在新选项卡 窗口中打开 我尝试将此代码添加到图形对象中 但它不起作用 它在同一选项卡 窗口中打开链接 listeners event clickItem met
  • 如何在 javascript 或 jquery 中按尺寸对图像进行排序

    如何在 JavaScript 或 jQuery 中按尺寸对图像进行排序 我的代码如下 var imgsrc if document images length lt 1 alert No images to open return for
  • jspm / jQuery / TypeScript - 模块“jquery”没有默认导出

    我正在尝试使用 TypeScript 和 jspm system js 来引导 Web 应用程序进行模块加载 我还没有走多远 安装 jspm 后 并使用它来安装 jQuery jspm install jquery 以及基础知识 main
  • 很奇怪!调用 window.location 或 location.replace 会重定向到该页面,然后再次返回!

    我处于调试模式 因此我可以看到正在访问哪个页面 当我打电话时window location or window location replace 它会转到该页面 然后返回原始页面 怎么会这样 解决方案是添加 window location
  • 使用 javascript 调整图像大小以在画布 createPattern 中使用

    我见过一些关于如何调整图像大小的技巧 在 IMG 标签内使用 但我想在里面有一个图像变量 一个 Javascript 调整它的大小 然后使用 a 中的图像 context createPattern 图像 重复 我还没有找到任何提示 关于如
  • 清理 html 字符串中的所有脚本

    HTML5 剪贴板很棒 但我正在寻找一种使其安全的方法 用户正在将文本 html 粘贴到我的网页中 这允许他们粘贴图像 表格等 我正在寻找一种方法 在将粘贴的内容添加到页面之前删除所有脚本 我需要删除
  • 不可见的 reCAPTCHA - 缺少必需的参数:sitekey

    我正在为每个带有具有类的按钮的表单动态加载不可见的 reCAPTCHAg recaptcha 我遇到的问题是验证码未正确加载 我不知道为什么 我按照验证码网站上的文档进行操作 但我不确定如何以及为什么会出现此错误 Uncaught Erro
  • 如何仅突出显示嵌套表的最里面的表行?

    我有几个嵌套表 我想突出显示鼠标指针下方的最里面的行 我怎样才能做到这一点 一些提示 我使用嵌套表来显示递归表格数据 表可以嵌套 10 层 嵌套正如您所期望的那样 table tr td table tr td table tr td 可能
  • 获取 byte[]

    我有一个 html 画布 如下所示 output is a base64string of image data var oldImage new Image oldImage onload function var resizeRatio
  • ES6 Reflect API 的好处

    我一直在努力升级一些代码以使用 ES6 语法 我有以下代码行 delete this foo 我的 linter 提出了使用建议 Reflect deleteProperty this foo 您可以找到该方法的文档here https d
  • Morgan Logger + Express.js:写入文件并在控制台中显示

    我正在尝试将 Morgan 与 Express js 结合使用来编写日志文件 同时也在控制台上显示我的日志 我正在使用这段代码 var logger require morgan var accessLogStream fs createW
  • 指定在任何 Jest 设置发生之前运行的代码

    tl dr 是 1 我怎样才能让Jest使用原生的require函数可以在任何地方加载我的测试中的所有模块 2 我将在哪里 如何进行修改 即替换为esm加载程序 https github com standard things esm ht
  • 如何制作过期/签名视频嵌入网址

    我是新来的 正在学习网络开发等等 我只知道如何将我的视频嵌入网站中 任何菜鸟都可以轻松获得源代码 他们也可以嵌入它 但在许多网站中 视频 src 均使用重定向器链接进行编码 例如 它会在一段时间后过期 在本例中是一天 我了解到这是一个签名网
  • 使用 QtWebEngine 将 C++ 对象暴露给 Qt 中的 Javascript

    使用 QtWebkit 可以通过以下方式将 C 对象公开给 JavascriptQWebFrame addToJavaScriptWindowObject如中所述https stackoverflow com a 20685002 5959
  • 将 Angular Web 组件 EventEmitter 监听到 javascript

    我在以下工具的帮助下创建了一个小型网络组件本文 https medium com IMM9O web components with angular d0205c9db08f使用角度元素 其中包括 Input and Output 我能够将

随机推荐

  • C++进阶篇5:字符串查找

    在STL中 字符串查找可以实现多种功能 例如 搜索单个字符 搜索子串 实现前向搜索 后向搜索 分别实现搜索第一个和最后一个满足条件的字符 或子串 要明确的一点是 所有查找find 函数的返回值均是size type类型 即无符号整数类型 该
  • Qt connect信号槽多次定义,会多次触发槽函数

    问题描述 点击Websocket 连接 按钮的时候将open连接到指定的地址 websocket在连接成功后会发出 connected信号 同时我们在初始化的时候就将 connected信号和我们的onconnected 函数建立连接 on
  • ubuntu 进入 recovery mode

    一 选择打开电源时进入固件 F 二 点击Esc按键 三 选择Enter 四 进入如下界面后点击Esc按键 四 选择 Advanced options for Ubuntu 五 选择recovery mode 六 选择root resume
  • 苹果真伪查询_二手MacBook Pro Air等苹果笔记本验货 鉴定 基本方法 流程

    资深果粉 苹果售后兼二手MacBook卖家教你如何鉴定二手Mac 一些基本要点 学会这几点办法 包你不会翻车 一 主板序列号是否与底壳一致 二 屏幕有无坏点亮点 更改纯色背景查看 三 配置要与年代一致 避免买到修改序列号改年份冒充新款的机器
  • RFID叉车纸滑托盘管理应用方案

    1 RFID使用场景和意义 工业送货车单件满载卷烟1600件 按RFID纸滑托盘卷烟24件 托盘 上下两层左右两垛 一个横切面四托盘的装载模式 可装载卷烟64托盘1536件 装载率达96 采用RFID纸滑托盘比传统托盘联运960件的装载率提
  • 解决ctypes.ArgumentError: argument 1: <class ‘TypeError‘>: wrong type

    在python2转换python3时报错 ctypes ArgumentError argument 1
  • 华为无盘服务器,无盘服务器

    无盘服务器 内容精选 换一换 网吧网络系统需要有很高的带宽 要支持大量的数据传输 因此 网吧对网络硬件有较高的要求 网吧网络在设计的时候 需要保证优质的网络传输速度 而且还要考虑到日后的网络升级和维护 下面 易天光通信 ETU LINK 就
  • c++的默认拷贝构造函数,从深度拷贝和浅拷贝说起

    本文收录于微信公众号 LinuxOK ID为 Linux ok 关注公众号第一时间获取更多技术学习文章 1 c 类的默认拷贝构造函数的弊端 c 类的中有两个特殊的构造函数 1 无参构造函数 2 拷贝构造函数 它们的特殊之处在于 1 当类中没
  • Ping 命令详解

    简述 ICMP协议是 Internet Control Message Protocol 因特网控制消息协议 的缩写 它是TCP IP协议族的一个子协议 用于在IP主机 路由器之间传递控制消息 ping Packet Internet Gr
  • annaconda虚拟环境管理常用指令

    引言 anaconda是一个开源的包 环境管理器 可以比较有效地配置多个虚拟环境 当python入门到一定程度时 安装anaconda是很必要的 conda 与pip 利用conda install与pip install命令来安装各种包的
  • javascript UTF-8的繁体与简体转换

    html code 來源 http www chinese learner com tools chinese converter php
  • myCobot Pro600六轴机械臂与3D深度视觉:物体精确识别抓取堆叠

    Introduction 随着时代的进步 各种精密的机械臂 人形机器人不断的问世 我们即将迎来到处都是机器人的高科技时代 为了跟上时代的脚步 我最近入手了一台myCobot pro 600机械臂 我主要是想要用它来学习机械臂相关得控制以及机
  • 目标检测简要综述

    转自 http imbinwang github io blog object detection review Bin WangAbout Archive 目标检测简要综述 May 6 2015 6 minute read 目标检测 Ob
  • 大数据项目分享 - 基于大数据的社交平台数据爬虫舆情分析可视化系统

    文章目录 0 前言 1 课题背景 2 实现效果 实现功能 可视化统计 web模块界面展示 3 LDA模型 4 情感分析方法 预处理 特征提取 特征选择 分类器选择 实验 5 部分核心代码 0 前言 这两年开始毕业设计和毕业答辩的要求和难度不
  • 超链接html的标记,HTML---列表标记和超链接标记

    列表标记分为有序列表和无序列表1 无序列表 无序列表的各个列表项之间没有顺序级别之分 通常是并列的 1 基本语法格式 列表项1 列表项2 在上述语法中 标记嵌套在 2 演示 部分代码 type属性用来指定列表项目符号 常用的属性值有3种 d
  • 区块链的两大安全风险漏洞以及多种应对方法!

    据估计 预计到2020的年 区块链技术公司收入估值将达到60亿美元 这是个好消息 但是 区块链安全漏洞仍然是分布式账本等应用的一个重要影响因素 如果安全问题得不到解决 那么区块链产业的实际收益可能会受到影响 彼时估计很少有人再为区块链打ca
  • android项目出现红色感叹号解决办法

    问题原因 工程中classpath中指向的包路径错误 解决办法 右键项目名称 BuildPath gt Configure Build Paht 中 然后上面有几个选项卡找到 Libraries中出现红色叉号的包为路径错误的包 到class
  • 什么是数据挖掘?

    数据挖掘 Data Mining DM 又称数据库中的知识发现 是目前人工智能和数据库领域研究的热点问题 所谓数据挖掘是指从数据库的大量数据中揭示出隐含的 先前未知的并有潜在价值的信息的非平凡过程 数据挖掘是一种决策支持过程 它主要基于人工
  • 爬虫实时获取全球疫情COVID-2019信息

    COVID 19 2019 nCoV 爬虫实时获取全球疫情信息 数据源 腾讯 运行环境 python3 6 windows10 pycharm 引用包 requests os xlwt time json 功能 自定义爬取次数 爬取间隔 获
  • Ext.ux.grid.RowEditor的bug修改

    声明 此bug针对ext 3 3 0版本 其他版本是否有此bug不清楚 1 找到文件ext 3 3 0 examples ux RowEditor js 2 定位到上述文件中的函数verifyLayout 和函数resizeColumn 3