首页 > 其他分享 >FLEX实践—Error #1009 when use LinearAxis

FLEX实践—Error #1009 when use LinearAxis

时间:2023-05-26 12:36:13浏览次数:51  
标签:UIComponent FLEX use autobuild core LinearAxis src mx projects


问题描述:
FLEX应用中有三个states,通过下拉列表切换state,三个state中显示的控件分别为:datagrid,chart,datagrid/chart;
当由只显示表格的视图切换到只显示图表的视图时,出现以下的错误:
TypeError: Error #1009: 无法访问空对象引用的属性或方法。

at mx.charts.chartClasses::ChartLabel/updateDisplayList()[C:/work/flex/dmv_automation/projects/datavisualisation/src/mx/charts/chartClasses/ChartLabel.as:262]
 at mx.core::UIComponent/validateDisplayList()[C:/autobuild/3.2.0/frameworks/projects/framework/src/mx/core/UIComponent.as:6351]
 at mx.managers::LayoutManager/validateDisplayList()[C:/autobuild/3.2.0/frameworks/projects/framework/src/mx/managers/LayoutManager.as:622]
 at mx.managers::LayoutManager/doPhasedInstantiation()[C:/autobuild/3.2.0/frameworks/projects/framework/src/mx/managers/LayoutManager.as:695]
 at Function/http://adobe.com/AS3/2006/builtin::apply()
 at mx.core::UIComponent/callLaterDispatcher2()[C:/autobuild/3.2.0/frameworks/projects/framework/src/mx/core/UIComponent.as:8628]
 at mx.core::UIComponent/callLaterDispatcher()[C:/autobuild/3.2.0/frameworks/projects/framework/src/mx/core/UIComponent.as:8568]
 at flash.utils::Timer/_timerDispatch()
 at flash.utils::Timer/tick()

 

上网搜了一下,发现问题出在<mx:LinearAxis title="平均耗时"/>上
FLEX BUG描述请参考:https://bugs.adobe.com/jira/browse/FLEXDMV-2088根据BUG ISSUE提供的解决方案,我采用了以下的方法:
创建 CustomerChartTitleRenderer

package mx.controls.extend.chart
{
 import mx.charts.chartClasses.ChartLabel; 
    import mx.core.IDataRenderer;  public class CustomerChartTitleRenderer extends ChartLabel implements IDataRenderer 
 {
  public function CustomerChartTitleRenderer()
  {
  }
        override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void { 
           if (parent == null){ 
               return; 
           } 
           super.updateDisplayList(unscaledWidth, unscaledHeight); 
     } 
     }
}

将mxml中

<mx:verticalAxis>
         <mx:LinearAxis title="平均耗时"/>

 </mx:verticalAxis>

修改为

<mx:verticalAxisRenderers>
          <mx:AxisRenderer titleRenderer="mx.controls.extend.chart.CustomerChartTitleRenderer"> 
                   <mx:axis> 
                            <mx:LinearAxis title="平均耗时"/>
                   </mx:axis> 
           </mx:AxisRenderer>   </mx:verticalAxisRenderers>

 

问题解决。

标签:UIComponent,FLEX,use,autobuild,core,LinearAxis,src,mx,projects
From: https://blog.51cto.com/u_16129500/6354920

相关文章

  • FLEX实践:主应用程序、MODULE、COMPONENT组合
    本次实践主要是记录下如何在FLEX主应用程序中调用一个MODULE,而在MODULE中调用COMPONENT。在开始之前先来简单谈谈MODULE这个概念 --========================================================================模块(Module)开发的优点自不待说。FlexProject中建立多个Application......
  • Flex实践——Personal Card制作
    label,text,textInput,button,radioButton,comboBox .     准备工作和上几次描述的一样,新建一个MXMLApplication:PersonalCard      然后拖控件,具体步骤不在这里描述了,都是直接拖控件就能用了,注意给需要操作的控件标上ID     接下来,来看一下comboBox的具......
  • FLEX4实践—自定义控件皮肤
     设计需求: 1)对于界面上的TextInput控件,需要设置‘必填’与‘非必填’两种状态 2)对于‘必填’状态希望给与控件特殊的显示样式 3)希望能简化代码,不需要每次使用TextInput控件都要对其置样式  方案1:将样式控制写入css文件,通过Style属性控制TextInput的显示 方案2:利用Flex......
  • FLEX实践—动态控制MenuItem是否可用
    设计思路:利用<mx:menuitem></mx:menuitem>中的enabled属性控制指定的菜单项是否可用。由于需要动态设置,因此设置对应的全局变量与该属性进行绑定(即添加[Bindable]标签) 代码:<?xmlversion="1.0"encoding="utf-8"?><mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"......
  • FLEX实践—XML、XMLList、XMLListCollection、ArrayCollection关系转换
    在本实例中将从一个XML对象通过层层转换最终变为ArrayCollection对象  <?xmlversion="1.0"encoding="utf-8"?><mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">......
  • FLEX实践—PieChart综合应用(颜色渐变、显示选中值、选中部分突出、数据钻探等)
    代码如下:(代码中附加了注释,每一种方法对应的效果均有注释)<?xmlversion="1.0"encoding="utf-8"?><mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()"> <mx:Scr......
  • FLEX AIR实践—删除ApplicationDirectory目录下文件
    AIR的文件目录类型有以下几种:File.userDirectory                                //指向用户文件夹File.documentsDirectory                      //指向用户文档文件夹File.desktopDirectory           ......
  • FLEX AIR实践—FLEX AIR XML Encode Bug
     这几天在用AIR程序通过WebService进行数据传输时发现了以下问题:用WebService传输‘A&B’内容到目的地,再从目的地将数据通过WebService获取到本地,结果数据变成了'A&amp;B';于是开始进行以下测试:将'A&B'替换成'A&amp;B'——>获取结果为'A&amp;amp;B'测试了其他转义字符也得到了同样......
  • FLEX实践—XML HttpService加载错误
    主应用代码:<?xmlversion="1.0"encoding="utf-8"?><mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" horizontalAlign="center" verticalAlign="middle" creationComplete="init......
  • FLEX SharedObject介绍及应用
    以下内容是对网上一些资料的总结FlexSharedObject介绍(Flash的本地共享对象是在用户机器上实现持久化存储的数据集合。Flash可以从程序中控制这些数据集合,向其中存入或者从中读取大量的信息数据。使用SharedObject对象对象说明:SharedObject(共享对象)可以看作是小型的数据库,我......