`

Flex framework 中你可能不经常用到的类

    博客分类:
  • Flex
阅读更多

 

1. mx.graphics.BitmapFill

   

 

package {
    import flash.geom.Rectangle;
    
    import mx.graphics.BitmapFill;
    import mx.skins.ProgrammaticSkin;
    
    public class RepeatBackground extends ProgrammaticSkin {
        [Embed(source="Repeater.png")]
        private var embedclass:Class;
        public function RepeatBackground() {
        }
        
        override protected function updateDisplayList(w:Number, h:Number):void {
            super.updateDisplayList(w,h);
            
            graphics.clear();
            var b:BitmapFill = new BitmapFill();
            b.source = embedclass;
            b.begin(graphics,new Rectangle(0,0,w,h));
            graphics.drawRect(0,0,w,h);
            b.end(graphics);
        }

    }
}
 

   

<?xml version="1.0"?>
  <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
       creationComplete="init()">
       <mx:Style>
           Application {
                border-skin:ClassReference("RepeatBackground");
           }
       </mx:Style>
       <mx:Script>
           <![CDATA[

           ]]>
       </mx:Script>
  </mx:Application>
 

  

2.package mx.core.ApplicationGlobal

 

 

import flex.core.ApplicationGlobals

private var app:ApplicationGlobals.application;
 

3.package mx.core.ClassFactory

 

 

<?xml version="1.0"?>
  <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
       initialize="init()">
  <mx:Style>
      .myC{
        backgroundColor:#cccccc;
      }
  </mx:Style>
   <mx:Script>
       <![CDATA[
           import mx.containers.Canvas;
           import flash.display.Graphics;
           import flash.geom.Rectangle;
           import mx.graphics.GradientEntry;
           import mx.graphics.LinearGradient;
          
           private function init():void {
               var c:ClassFactory = new ClassFactory(Canvas);
               var ob:Object = {
                    width : 300,
                    height : 600,
                    styleName : "myC"
               }
               
               c.properties = ob;
               complete(c);
           }
           
           private function complete(c:ClassFactory):void {
                var canvas:Canvas = c.newInstance() as Canvas;
                 addChild(canvas);
           }
    
       ]]>
   
   </mx:Script>
  </mx:Application>
 

 

4.package mx.core.ComponentDescriptor

 

   编译器生成代码

/**
 * 	Generated by mxmlc 2.0
 *
 *	Package:	
 *	Class: 		test2
 *	Source: 	D:\桌面临时\test2\src\test2.mxml
 *	Template: 	flex2/compiler/mxml/gen/ClassDef.vm
 *	Time: 		2009.03.30 21:21:20 CST
 */

package 
{

import flash.accessibility.*;
import flash.debugger.*;
import flash.display.*;
import flash.errors.*;
import flash.events.*;
import flash.external.*;
import flash.filters.*;
import flash.geom.*;
import flash.media.*;
import flash.net.*;
import flash.printing.*;
import flash.profiler.*;
import flash.system.*;
import flash.text.*;
import flash.ui.*;
import flash.utils.*;
import flash.xml.*;
import mx.binding.*;
import mx.core.Application;
import mx.core.ClassFactory;
import mx.core.DeferredInstanceFromClass;
import mx.core.DeferredInstanceFromFunction;
import mx.core.IDeferredInstance;
import mx.core.IFactory;
import mx.core.IPropertyChangeNotifier;
import mx.core.UIComponentDescriptor;
import mx.core.mx_internal;
import mx.events.FlexEvent;
import mx.styles.*;


[Frame(extraClass="_test2_FlexInit")]

[Frame(factoryClass="_test2_mx_managers_SystemManager")]


//	begin class def

public class test2
	extends mx.core.Application
{

	//	instance variables

	//	type-import dummies


	//	Container document descriptor
private var _documentDescriptor_ : mx.core.UIComponentDescriptor = 
new mx.core.UIComponentDescriptor({
  type: mx.core.Application
})

	//	constructor (Flex display object)
    /**
     * @private
     **/
	public function test2()
	{
		super();

		mx_internal::_document = this;

		//	our style settings


		//	ambient styles
		mx_internal::_test2_StylesInit();

		//	properties

		//	events
		this.addEventListener("initialize", ___test2_Application1_initialize);

	}

	//	initialize()
    /**
     * @private
     **/
	override public function initialize():void
	{
 		mx_internal::setDocumentDescriptor(_documentDescriptor_);



		super.initialize();
	}

	//	scripts
	//	<Script>, line 10 - 34

           import mx.containers.Canvas;
           import flash.display.Graphics;
           import flash.geom.Rectangle;
           import mx.graphics.GradientEntry;
           import mx.graphics.LinearGradient;
          
           private function init():void {
               var c:ClassFactory = new ClassFactory(Canvas);
               var ob:Object = {
                    width : 300,
                    height : 600,
                    styleName : "myC"
               }
               
               c.properties = ob;
               complete(c);
           }
           
           private function complete(c:ClassFactory):void {
                var canvas:Canvas = c.newInstance() as Canvas;
                 addChild(canvas);
           }
    
       

	//	end scripts


    //	supporting function definitions for properties, events, styles, effects
/**
 * @private
 **/
public function ___test2_Application1_initialize(event:mx.events.FlexEvent):void
{
	init()
}



	//	initialize style defs for test2

	mx_internal static var _test2_StylesInit_done:Boolean = false;

	mx_internal function _test2_StylesInit():void
	{
		//	only add our style defs to the StyleManager once
		if (mx_internal::_test2_StylesInit_done)
			return;
		else
			mx_internal::_test2_StylesInit_done = true;

		var style:CSSStyleDeclaration;
		var effects:Array;

		// myC
		style = StyleManager.getStyleDeclaration(".myC");
		if (!style)
		{
			style = new CSSStyleDeclaration();
			StyleManager.setStyleDeclaration(".myC", style, false);
		}
		if (style.factory == null)
		{
			style.factory = function():void
			{
				this.backgroundColor = 0xcccccc;
			};
		}

		StyleManager.mx_internal::initProtoChainRoots();
	}


	//	embed carrier vars
	//	end embed carrier vars


//	end class def
}

//	end package def
}
 

   5.package mx.skins.ProgrammaticSkin \

 

 

protected function rotatedGradientMatrix(x:Number, y:Number,
											 width:Number,
											 height:Number,
											 rotation:Number):Matrix


protected function drawRoundRect(
							x:Number, y:Number, width:Number, height:Number,
							cornerRadius:Object = null,
							color:Object = null,
							alpha:Object = null,
							gradientMatrix:Matrix = null,
							gradientType:String = "linear",
							gradientRatios:Array /* of Number */ = null,
							hole:Object = null):void


 

 

   6.package mx.manager.SystemManagerGlobals

 

 

public  static var topLevelSystemManagers:Array = [];
public static var bootstrapLoaderInfoURL:String
 

7. mx.utils.LoaderUtil

 

 

 public static function normalizeURL(loaderInfo:LoaderInfo):String

 

 

 

 

 

 

 

  • 大小: 250.8 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics