`

开发Flex程序要控件注意的问题

    博客分类:
  • Flex
阅读更多
一. Flex中有些控件只有在使用的时候才会初始化。这个特性在一些Navigator容器,如ViewStack,Navigator和Accordion中表现得最为明显。当这些容器初始化的时候,它只会初始化显示在最前面的的子容器,其它的容器其实没有初始化,如果你现在要对那些容器中的某些控件进行操作,就会出现:TypeError: Error #1009: 无法访问空对象引用的属性或方法。昨天这个东西困扰了我长达几个小时,后来终于恍然大悟。
问题解答:在控件中加入 creationPolicy="all",这样就不会为空异常了。

二.如何限制TextInput中的输入。其实文本输入控件TextInput和TextArea都有一个restrict属性,它可以控制TextInput的输入。这个东西挺有用,可以防止输入恶意字符串。不过Flex 帮助文档中对这个属性介绍的不够全面,经过我实验N次,总结出了几条新的经验:
1.如果你想要控制用户只能输入字母和数字,就这样写:restrict="a-zA-Z0-9"。帮助中只给出了一个例子说"a-z"就是只允许输入小写字母,但是没有说如何多重限制,自己实验了一下,终于成功。你按照我上面写的那样做就可以多重限制了,中间不用加空格,我实验过了。
2.帮助文档中写了“^”符号可以限定不允许输入的字符串,比如&#34;^0&#34;就是不允许输入0。同样,帮助中也没有说明如何限定多个字符。实验结果如下:想要控制多个字符的时候需要加括号,这样歇restrict=&#34;^(';:)&#34;,就可以限定多个字符了。另外,你想控制的字符有<>这样在MXML中有特殊意义的字符的话,请转换成 < 的形式。至于每个符号的编码是怎么样的,请打开DreamWeaver,在代码编辑器中输入&,然后查看代码提示,方便又快捷!
三.DataGrid的labelFunction。我需要在DataGrid中现实时间,但是后台传回的是格林威治时间,很长,我得需要格式化,这就要用到 labelFunction 属性。这个属性的值是一个函数,这些都在帮助文档中有说明,我就不多说了,我想说的是如何用这个东西。先说一下这个函数需要的两个参数:item:类型Object,column:类型DataGridColumn。其中item保存的是显示在DataGrid中的每一个对象的引用,而column表示的就是当前列,这个column好像没什么用。我一直以为必须要用到column才可以,结果总是显示错误。最后终于成功。代码如下:
private function formatLabel(item:Object,column:DataGridColumn):String
{
return df.format(item.dates);// df是一个DateFormatter,item中
//的dates放的是格林威治时间
}

这几天学会的技巧主要就是这些,都是花了不少时间才学会的。以后遇到类似问题就顺手多了。
补充一点:DataGrid的dataProvider是一个ArrayCollection。当你为DataGrid设定dataProvider的时候可能会给它一个对象数组,但是当你操作的时候要记住,dataProvider不再是对象数组了,你必须把它作为ArrayCollection来操作。List控件估计也是一样,我没有试过。
分享到:
评论

相关推荐

    Flex开发自定义控件

    ### Flex开发自定义控件详解 #### 一、前言 随着互联网技术的不断发展与进步,用户对于网页应用的需求越来越...希望本文能帮助开发者们更好地掌握Flex自定义控件的开发技巧,从而提升RIA应用程序的用户体验和性能。

    flex开发自定义控件

    自定义控件的开发不仅增强了Flex应用程序的灵活性,还提高了用户体验。通过掌握创建自定义控件的技巧,开发者能够更好地满足项目需求,实现更复杂、更个性化的用户界面。希望本文能为正在学习Flex开发的你提供有价值...

    Flex控件折叠效果

    Flex是一种用于创建富互联网应用程序(RIA)的开源框架,主要由Adobe Systems开发。在Flex中,我们可以利用各种组件如Accordion、AccordionItem或自定义的CollapsiblePanel来实现折叠效果。 1. **Accordion组件**:...

    flex8 网格控件

    Flex8网格控件是Adobe Flex框架中的一个关键组件,它在构建富互联网应用程序(RIA)时扮演着重要的角色。Flex是一种基于ActionScript和MXML的开放源代码开发平台,主要用于创建交互式、高性能的Web应用。Vb6,即...

    Flex应用程序开发

    ### Flex应用程序开发:深入理解与实践 #### 一、Flex概览 Flex是Adobe Systems Incorporated推出的一款用于构建高质量的Rich Internet Applications(RIA)的开源框架。它基于Flash平台,允许开发者使用标准的Web...

    flex时间控件

    Flex是一个开源的开发框架,它允许开发者使用ActionScript语言创建富互联网应用程序(RIA)。 在Flex时间控件中,用户可以方便地选择年、月、日以及小时、分钟和秒,以精确设定一个日期和时间值。这样的控件在许多...

    flex 时间选择控件

    Flex时间选择控件是一种在Adobe Flex应用程序中用于用户交互,帮助用户方便地选取特定时间的组件。这个控件通常被嵌入到用户界面中,允许用户以小时、分钟和(可能的话)秒为单位选择时间。它提高了用户体验,因为...

    Flex4.0自定义控件

    本文将深入讲解Flex4.0环境下自定义控件的开发过程及注意事项,帮助开发者更好地掌握这一技能。 #### 二、Flex4.0自定义控件概述 Flex4.0提供了丰富的UI组件库,但在某些场景下,预定义的控件无法完全满足项目需求...

    Flex-Java-Demo.rar_flex_flex 控件

    8. **开发工具**:开发Flex和Java应用,通常需要Adobe Flex Builder或IntelliJ IDEA等IDE,它们提供了强大的代码编辑、调试和部署功能,能够加速开发过程。 9. **部署与运行**:Flex应用程序一般以SWF文件形式运行...

    flex通用分页控件

    Flex通用分页控件是基于Adobe Flex框架开发的一种组件,用于在Web应用程序中实现数据的分页显示。Flex是一个开放源代码的、基于XML的编程语言,主要用于构建富互联网应用程序(Rich Internet Applications,RIA)。...

    flex3.5时间控件(含时分秒)

    在Flex 3.5开发环境中,时间控件是构建用户界面时不可或缺的一部分,尤其是在需要用户输入或选择特定时间的情况下。本篇文章将详细讲解如何在Flex 3.5中创建一个包含时、分、秒的时间选择器,以及如何进行实际应用。...

    flex多文件上传控件(flex源码)

    该控件是通过Adobe Flash Builder 4进行开发的,Flash Builder是一个集成开发环境(IDE),专为使用Flex和ActionScript进行开发而设计。它提供了代码编辑、调试和部署功能,让开发者能够更高效地创建Flex应用。 在...

    flex DataTimePicker时间控件

    "flex DataTimePicker时间控件"是一个专为Adobe Flex平台设计的组件,用于帮助用户方便地选择日期和时间。Flex是一个开放源代码的框架,主要用于构建富互联网应用程序(RIA),它基于ActionScript编程语言和MXML标记...

    flex 自定义控件、事件

    这个主题聚焦于“flex自定义控件与事件”,这是一个关键的开发概念,特别是对于那些希望深入理解Flex架构和提升应用用户体验的开发者来说。 自定义控件在Flex开发中扮演着重要角色,它们允许开发者根据项目需求创建...

    在flex的dataGrid控件中显示图片的实践

    在Flex开发中,DataGrid控件是用于展示结构化数据的常用组件,它可以灵活地显示表格形式的数据。本文将深入探讨如何在DataGrid中显示图片,特别是在与Spring、Hibernate和Struts等框架集成的背景下,如何处理二进制...

    flex控件事件

    Flex控件事件是Adobe Flex应用程序开发中的核心概念,主要用于实现用户交互和组件间的通信。在Flex中,控件(或称为组件)是构建用户界面的基本元素,如按钮、文本框、列表等。当用户与这些控件进行交互时,如点击...

    flex上传控件,带进度、时间、速度显示

    Flex是一个开源的开发框架,主要用于构建富互联网应用程序(RIA),它可以创建动态、交互式的Web应用,支持丰富的图形和多媒体内容。在Flex中,我们可以自定义控件以满足特定的需求,比如在上传文件时展示进度、剩余...

    Flex 上传文件控件 (带java服务端)

    Flex是Adobe公司开发的一种富互联网应用(RIA)开发框架,用于构建具有动态图形和交互性的Web应用程序。在Flex中,我们可以使用各种组件来实现用户界面,其中包括文件上传功能。本项目提供了一个完整的Flex文件上传...

    flex分页控件的使用

    在Flex开发中,分页控件是用于展示大量数据时必不可少的一个组件,它允许用户以较小的数据块(每页)浏览整个数据集,从而提高用户体验并减轻服务器负载。本篇文章将详细讲解如何在Flex中创建和使用分页控件。 首先...

    使用Flex开发DataGrid分页控件应用支持客户端及服务端

    本教程将详细介绍如何在Flex中开发一个支持客户端和服务器端分页的DataGrid控件。 1. 客户端分页: 在客户端分页中,应用程序会一次性从服务器获取所有数据,然后在客户端进行分页处理。这种方式的优点是用户交互...

Global site tag (gtag.js) - Google Analytics