Flex DataGrid:根据另一个值更改值?

2024-05-01

我在 Flex 中有一个 DataGrid,其中一列是复选框,另一列是数值。单击该复选框时,数值应更改,如果未选中该复选框,则数值应更改为 0;如果选中该复选框,则应更改为预定义的最小值。这是我的代码:

<mx:DataGrid x="0" y="45" width="272" height="525" dataProvider="{dp}" variableRowHeight="true" editable="true" id="equipmentDG" verticalAlign="middle">                
    <mx:columns>                    

        <mx:DataGridColumn headerText="" headerStyleName="gridheader" width="20" dataField="included" editorDataField="selected" rendererIsEditor="true">
            <mx:itemRenderer>
                <fx:Component>
                    <mx:CheckBox click="handleClicks(event)">
                        <fx:Script>
                            <![CDATA[
                            public function handleClicks(event:MouseEvent):void
                            {
                                data.included = !data.included;

                                if(data.included && data.antal == 0)     
                                    data.antal = data.minNo; 
                                else if(!data.included) 
                                    data.antal = 0;
                            }
                            ]]>
                        </fx:Script>
                    </mx:CheckBox>
                </fx:Component>
            </mx:itemRenderer>
        </mx:DataGridColumn>
        <mx:DataGridColumn headerText="Antal" headerStyleName="gridheader" width="40" dataField="antal" editorDataField="value" editable="true">
            <mx:itemEditor>
                <fx:Component>

                    <mx:NumericStepper stepSize="1" width="35" height="20"  focusOut="numericstepper1_changeHandler(event)">
                        <fx:Script>
                            <![CDATA[
                            import mx.events.NumericStepperEvent;
                            override public function set data(value:Object):void
                            {
                                super.data = value;

                                if (value && value.hasOwnProperty("minNo"))
                                    minimum = value.minNo;

                                if (value && value.hasOwnProperty("maxNo"))
                                    maximum = value.maxNo;                                              
                            }

                            protected function numericstepper1_changeHandler(event:Event):void
                            {
                                if(data.antal > 0)
                                    data.included = true;
                                else
                                    data.included = false;
                            }

                            ]]>
                        </fx:Script>

                    </mx:NumericStepper>                                        

                </fx:Component>
            </mx:itemEditor>
        </mx:DataGridColumn>


    </mx:columns>
</mx:DataGrid>

数据中的值会更新(当我关闭并打开该对话框时可以看到它),但它不会在数据网格中立即更新。如何在单击复选框后立即使值发生明显变化?


在数据对象中,确保每次包含的属性发生更改时都会触发一个事件。在第二个 itemRenderer 中,监听事件并在属性更改时更新值。

从概念上讲是这样的:

在数据对象中:

private var _included : Boolean;
public function get included():Boolean{
 return this._included;
}

public function set included(value:Boolean):void
 this._included = value;
 this.dispatchEvent(new Event('includedChanged');
}

将渲染器添加到第二列,如下所示:

 <mx:DataGridColumn headerText="Antal" headerStyleName="gridheader" width="40" dataField="antal" editorDataField="value" editable="true">
  <mx:itemRenderer>
   <fx:Component>
   <mx:Label dataChange="onDataChange()" >
    <fx:Script>
     <![CDATA[
      public function onDataChange():void{
       thistext = data['Antal'];
       this.data.addEventListener('includedChanged',onIncludedChange);
      }
      public function onIncludedChange(e:Event):void{
       this.text = data['Antal'];
      }
     ]]>
    </fx:Script>
   </mx:Label>
  </fx:Component>
  </mx:itemRenderer>
  <mx:itemEditor>
   <fx:Component>

    <mx:NumericStepper stepSize="1" width="35" height="20"  focusOut="numericstepper1_changeHandler(event)">
     <fx:Script>
      <![CDATA[
       import mx.events.NumericStepperEvent;
       override public function set data(value:Object):void{
        super.data = value;

        if (value && value.hasOwnProperty("minNo"))
         minimum = value.minNo;

        if (value && value.hasOwnProperty("maxNo"))
          maximum = value.maxNo;                                              
        }

        protected function numericstepper1_changeHandler(event:Event):void
        {
         if(data.antal > 0)
          data.included = true;
         else
          data.included = false;
         }

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

Flex DataGrid:根据另一个值更改值? 的相关文章

  • Flex、AIR:在指定文件夹中搜索 .pdf 文件

    我需要 ActionScriot 代码来解析给定文件夹并在其中搜索 txt 文件 任何链接或代码示例都会有所帮助 Adobe Flex 3 3 AIR 谢谢 斯里 There var docs File File documentsDire
  • WPF DataGrid - 禁用时保留选择

    我已经为此苦苦挣扎了一段时间了 我的应用程序中有一个 主 详细信息 布局 并且像许多其他人一样面临着 DataGrid 在禁用它时丢失其选择的问题 本质上 从列表中选择一个元素来填充一系列字段后 用户按下 编辑 这会禁用 DataGrid
  • 当针对 Flex 4 sdk 时,Flex builder3 不会生成 html 包装器

    在 Flex builder 3 中 当我创建一个针对 Flex 4 sdk 的新 Flex 应用程序时 它不会生成 html 包装文件 我在网上寻找答案 但没有成功 我已确保在项目属性中选中该框以生成 html 包装器 唯一的解决方法是针
  • flex:如何防止在flex3文本输入中粘贴(ctrl+V)?

    你好 我需要禁用在文本输入中粘贴文本 flex 3 CTRL V 任何想法 reagrds 这只会阻止粘贴多个字母 但它确实适用于大多数用途
  • 将 Flex ByteArray 转换为 Java byte[]

    我正在尝试将使用 rtmp 协议从 Flex GUI 发送的文件上传到服务器上 我昨天问如何在服务器上发送文件数据 通过rtmps java上传文件到服务器 https stackoverflow com questions 2310855
  • 有没有好的 AS3 代码片段/示例的指针?

    我是 AS3 的新手 每天都在学习 我正在寻找好的 AS3 代码片段 示例 小项目 我可以将其用于学习目的和参考 不依赖于 Flash IDE 因为我使用 Flex SDK 和 Flash Develop 此外 我还专门寻找有关音频 视频流
  • 原始数据转JPEG格式-JAVA

    我尝试使用 JPEGEncoder 将原始数据 ByteArray 转换为 JPEG 格式 但在移动设备上速度太慢 我已经在移动设备上测试过 我怎样才能在java中做同样的事情 我将把原始数据字节发送到java并用java将其编码为JPEG
  • 如何在flex中绘制虚线

    经过一番搜索和阅读 Graphics 类文档后 我找不到指定线条的线条样式的方法 我的意思是这条线是实线还是虚线 有人可以帮助我吗 Thanks 无论如何 您不能仅仅通过使用 Flex 库类 当然 你也可以自己做 这是一个实现它的类 根据找
  • AS3 无法从 Java 发送的套接字解​​码 AMF3 对象

    我有一个 java 套接字服务器 它在连接时将 Animal 对象发送到 Flash 客户端 对象的发送方式如下 Amf3Output amf3Output new Amf3Output SerializationContext getSe
  • ASP.NET 2.0 - 带有 tbody / thead 的 DataGrid

    有没有办法让 DataGrid 控件呈现 tbody 和 thead HTML 元素 虽然我喜欢 user186197 的答案 但该博客文章使用反射 但在非完全信任的托管环境中可能会出现问题 这是我们使用的 没有黑客 public clas
  • 如何从 Flex Spark 列表的 DataProvider 对象获取其 ItemRenderer?

    在 Flex 中 我可以创建一个 ItemRenderer 来表示列表 DataProvider 中的每个项目 但如何通过 DataProviders 对象访问 ItemRenderer 的实例 就像是myList getItemRende
  • 弹性图表隐藏数据提示

    我们从多个源获取数据 并且某个日期的数据可能存在也可能不存在 因此 对于没有数据的点 我们发送 NaN 问题 在下面的代码中 有没有办法不显示那些为空的数据提示 我添加了一个数据提示功能 但它确实显示了一个小的空方块 是否有可能甚至不显示
  • WPF DataGrid DataBindingComplete 事件在哪里?

    数据绑定完成后 我需要采取一些操作 例如 根据其他一些单元格使某些单元格只读 在WinForm DataGridView中 我曾经在DataBindingComplete事件中执行此操作 但是 我在 WPF DataGrid 中找不到这样的
  • 使用多个模块时优化 Flex

    我有一个 Flex 应用程序 加载时间非常重要 消费者网站 我希望能够在屏幕上显示一些内容 然后允许根据需要加载其他模块 我面临的问题是所有模块的总和比我将所有组件包含在单个 swf 文件中要大得多 原因很明显 例如 访问 Web 服务所需
  • html 表单发布到 Flex 应用程序

    我有一个基本完成的 Flex 应用程序 它使用 Zend AMF 来连接 提供数据 我的应用程序确实有一个登录屏幕 看起来工作正常 现在我想在我的网站上添加另一个登录表单 允 许用户输入用户名 密码 提交表单时应将数据传递给 Flex 应用
  • 如何在 winforms 应用程序中设置数据网格滚动条的位置?

    在我的 C winforms 应用程序中 我有一个数据网格 当数据网格重新加载时 我想将滚动条设置回用户设置的位置 我怎样才能做到这一点 编辑 我使用的是旧的 winforms DataGrid 控件 而不是较新的 DataGridView
  • Channel.Security.Error...错误 #2048

    我最近升级到 PHP 版 Flash Builder 4 5 并尝试将发布版本上传到我的远程服务器 当我尝试从应用程序进行 php 调用时 出现错误 Send failednChannel Security Error error Erro
  • 在类之间调度事件

    我有一个自定义事件类 public class FFTDrawEvent extends Event public static const DRAW EVENT String drawEvent private var param Arr
  • 有没有一个工具可以自动追踪未使用的代码

    我目前有 6 个不同的 Flex 应用程序 小部件 在主页上运行 它们都依赖于一个公共库项目 我目前正在非常大幅度地清理代码库 并且很难以这种方式保持概览 特别是因为我继承了代码库 有谁知道有一个工具可以自动通知我任何死代码 Cheers
  • Silverlight Datagrid:在对列进行排序时突出显示整个列

    我的 Silverlight 应用程序中有一个 DataGrid 我想在对该列进行排序时突出显示整个列 它在概念上与上一个问题类似 Silverlight DataGrid 突出显示整列 https stackoverflow com qu

随机推荐

  • 将 lit / lit-html TemplateResult 渲染为字符串

    在lit lit html lit element中 标准组件是TemplateResult 通常是HTMLTemplateResult 创建如下 function renderMe msg return html div Hello ms
  • 返回在响应的特定条件下首先执行的 future

    我正在尝试使用 completablefutures 进行 3 个休息调用 并返回第一个与特定响应匹配的调用 下面是我为其编写的示例测试代码 减去其余调用 但这似乎不起作用 即使有等待时间 我总是看到 future1 被返回 这意味着 te
  • 具有类似数组性能的 Java Bitset 替代方案?

    我正在寻找 Java Bitset 实现的替代方案 我正在实现一个高性能算法 似乎使用 Bitset 对象会降低其性能 有任何想法吗 Someone here https stackoverflow com questions 605226
  • 我可以构造一个长 list 以使索引很长吗?

    目前索引aList
  • 将向量传递到 Intel SGX 中的 enclave

    我有一个vector
  • UIScrollView 在 vi​​ewwillappear 中设置 contentoffset 不起作用

    我想知道是否可以在 viewwillappear 方法中为 uiscrollview 设置 contentoffset void viewWillAppear BOOL animated self scrollView setContent
  • jQuery 性能:hide() 与 is(':visible') - 哪个更快?

    我有多个下拉框 当单击链接时它们会下降 如果同时打开 这些盒子就有可能重叠 查询元素是否可见是否更快 box is visible 然后如果该框可见则将其隐藏 box hide 或者只是告诉它无论如何都要隐藏 为了便于论证 我们假设 50
  • Swift - 从 UnsafePointer 长度转换为 String

    我考虑了很多similar问题 但仍然无法让编译器接受这一点 Socket Mobile API 在 Objective C 中 将 ISktScanDecodedData 传递到 Swift 中的委托方法中 数据可能是二进制的 我想这就是
  • Bash:在新终端中执行带有参数的命令[重复]

    这个问题在这里已经有答案了 所以我想在 bash 中打开一个新终端并执行带参数的命令 只要我只采取类似的东西ls作为命令它工作正常 但是当我采取类似的东西时route n 所以带参数的命令不起作用 代码 gnome terminal win
  • 如何在 Ubuntu 9.10 上安装 R 软件包 rgl? [复制]

    这个问题在这里已经有答案了 可能的重复 安装 rgl 时出现问题 https stackoverflow com questions 7473067 problem installing rgl 我正在尝试在 Ubuntu 9 10 上安装
  • 可以在 Vue 模板中渲染 VNode 吗?

    我遇到的情况是 我有一个渲染函数将一些数据传递到作用域槽 作为此数据的一部分 我想包含一些由渲染函数构造的 VNode 这些 VNode 可以选择由作用域插槽使用 无论如何 在模板中编写作用域槽以输出收到的原始 VNode 时是否存在 Vu
  • Git checkout 分支从其他分支留下目录树

    我有一个branch2 其源是branch1 并重命名了源自branch1 的目录 当签出branch1时 重命名的目录仍然存在 但没有标记为未暂存的修改 重命名的目录当然不会作为branch1 上的提交出现 为什么会出现这种情况 上述目录
  • 如何在代码中设置 DataGridTextColumn 的绑定?

    我正在使用 CodePlex 的工具包 DataGrid 我正在代码中生成列 我怎样才能设置相当于 绑定名字 在代码中 或者 我怎样才能设置值 这就是我需要做的 不一定要绑定它 我只想要数据网格单元格中模型属性的值 DataGridText
  • IE9 SmartScreen 过滤器警告

    我的公司开发了一款 IT 基础设施管理软件 我们主要在乌克兰使用该软件 我们的客户端应用程序安装程序可以从我们的 FTP 服务器下载 每当有人从我们的 FTP 下载 Install msi 时 IE9 都会告诉用户该软件包不常被下载 因此可
  • 具体5-如何在php中通过ajax获取上传的文件

    我正在尝试通过ajax上传多个文件 但我不知道如何在PHP中获取上传的文件 我发送给他们 var attachments attachment file var post data new FormData if attachments l
  • .Net Framework 4.8 和 .Net 5 之间的垃圾收集行为差异

    为了在已经发生很多次的地方检测潜在的内存泄漏 我使用了如下所示构建的测试 主要思想是拥有一个实例 不再引用它并让垃圾收集器收集它 我不想关注这是否是一种好的技术 在我的具体情况下它做得非常出色 但我想关注以下问题 下面的代码在 Net Fr
  • size_t 总是无符号吗?

    如标题 size t 始终无符号 即size t x is x always gt 0 Yes It s usually定义如下 在 32 位系统上 typedef unsigned int size t 参考 C 标准第 18 1 节定义
  • Code First 从 int 迁移到 Guid 主键问题

    我正在尝试将代码第一个 ID 列从 int 更改为 Guid 当尝试运行迁移时 我收到以下消息 Identity column CustomFieldId must be of data type int bigint smallint t
  • 将 Flask_login 会话与 jinja2 模板一起使用

    我有简单的 jinja2 模板 带有注册 登录链接 我应该在用户登录时隐藏它们 我还使用flask login 模块来处理这个东西 问题是 我应该如何识别用户是否已登录 jinja2 模板 Flask Login 添加了current us
  • Flex DataGrid:根据另一个值更改值?

    我在 Flex 中有一个 DataGrid 其中一列是复选框 另一列是数值 单击该复选框时 数值应更改 如果未选中该复选框 则数值应更改为 0 如果选中该复选框 则应更改为预定义的最小值 这是我的代码