2011-05-06 17 views
0

私のコードには2つの問題があります。WindowShadeとCollapsibleAccordionの問題、Flex3からFlex4への移行

最初は:WindowShadeにあります。私は自分のアプリケーションにWindowShadeを持っており、これを実行するためにクリックした瞬間にすべてがハングアップします。これはFlex3を使用してコンパイルするときにうまくいきました。第二に

<mdi_containers:MDIWindow xmlns:mdi_containers="flexlib.mdi.containers.*" 
xmlns:flexlib_controls="flexlib.controls.*"     
xmlns:mx="http://www.adobe.com/2006/mxml"  
xmlns:containers="flexlib.containers.*" 
      width="800" layout="absolute" 
      height="500" title="News Articles"  
      textAlign="center" 
      verticalGap="0" horizontalGap="0" 
     minWidth="800" 
      minHeight="500"> 
    <mx:Canvas width="100%" styleName="roundedBottomCorner"> 

    <containers:WindowShade id="wshade_fox" top="0" width="100%" opened="false" visible="true" 
      openIcon="{null}" closeIcon="{null}" paddingTop="0" 
      headerRenderer="{new ClassFactory(c7.views.components.news.header)}">            
<mx:VBox horizontalScrollPolicy="off" width="100%" height="225" verticalGap="0" horizontalGap="0"> 
</mx:VBox>          
         </containers:WindowShade>           
</mx:Canvas> 

:CollapsibleAccordion

コードは次のようになります。私はCollapsibleAccordionの中に2つのキャンバスを持っていますが、Flex4でも問題なく動作しますが、唯一の問題はキャンバスのラベルを見ることができないことです。

この問題のコードは以下の通りです:私は、ウィンドウシェードは、Flex 4へのFlex 3から行くとsimliarの問題を抱えていた

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"     
      xmlns:cal="cal.*" 
      layout="absolute" 
      addedToStage="stage_init()" 
applicationComplete="init()"        
     xmlns:geometry="com.degrafa.geometry.*" 
     xmlns:degrafa="com.degrafa.*" 
     xmlns:paint="com.degrafa.paint.*" 
     xmlns:containers="flexlib.containers.*" 
     xmlns:flexlib_controls="flexlib.controls.*" 
     xmlns:mdi_containers="flexlib.mdi.containers.*" 
     xmlns:auto="com.hillelcoren.components.*" 
     xmlns:local="*" backgroundColor="#f7fafe" backgroundGradientColors="[#f7fafe, #6caaeb]" 
     xmlns:components="CollapsibleAccordion.*" 
     xmlns:notifications="c7.views.components.notifications.*" 
     xmlns:dbview="c7.views.apps.dashboard.*" 
     modalTransparency="0.8" preloader="c7.views.components.Pre" 
     modalTransparencyColor="0x000000" verticalScrollPolicy="auto" 
     backgroundSize="100%"    
     xmlns:components1="c7.views.components.*" 
     xmlns:notification="c7.views.components.notification.*" 
     xmlns:news="c7.views.components.news.*">  
    <mdi_containers:MDICanvas id="mdic" horizontalScrollPolicy="off" verticalScrollPolicy="off" 
     visible="{!GlobalModel.getInstance().dashboard_mode}" 
     minWidth="{top_bar.width}" 
     width="100%" height="100%" top="{top_bar.height}" backgroundAlpha="0">        
     <mx:Canvas id="cvs_widget_bar" right="0" top="0" height="100%"> 
      <components:CollapsibleAccordion id="collapsibleAccordion1" height="100%" top="0" right="0" 
       orientation="left" barSize="30" currentWidth="30" openSize="150" 
       drawerButtonStyle="drawerButton" closeButtonStyle="drawerCloseRight" accordianStyle="drawerAccordion"> 
       <mx:Canvas width="100%" top="0" right="0" height="100%" label="Widget Bar"> 

       </mx:Canvas> 
       <mx:Canvas width="100%" height="100%" label="Feedback" icon="{IconUtility.getClass(cvs_comment,'assets/cloud_main/images/article-48x48.png')}" 
        id="cvs_comment" top="0" right="0"> 

       </mx:Canvas> 
      </components:CollapsibleAccordion> 
     </mx:Canvas>  

答えて

1

私はheaderClassためのボタンを定義する必要がありました。あなたはウィンドウシェードを宣言するとき、あなたはMXMLに追加することができますしたい場合は、

flexlib|WindowShade { 
    headerClass:ClassReference("mx.controls.Button"); 
} 

または::私はWindowShadesの束を持っていたので、私は私のスタイルシートに追加

headerClass="mx.controls.Buttons" 

を...そのように、あなたの "wshade_fox"宣言は次のようになります:

<containers:WindowShade id="wshade_fox" top="0" width="100%" opened="false" visible="true" 
     openIcon="{null}" closeIcon="{null}" paddingTop="0" 
     headerRenderer="{new ClassFactory(c7.views.components.news.header)}" 
     headerClass="mx.controls.Button"> 

あなたの問題の最初の部分を助けることを望みます。

関連する問題