ÔÚFlex Chaet ÖлæÖÆ3Dͼ±í
ǰһÕóÔÚÂÛ̳ÉÏ¿´µ½Ò»¸öÐֵܣ¬ÏëÔÚFlex ChartÖÐΪͼÀýÉèÖÃ3DЧ¹û,½ü¼¸Ìì²éÕÒÁËЩ×ÊÁÏ£¬¶¯ÊÖ×öÁ˸öDEMO¹©´ó¼Ò²Î¿¼!
DEMOÑÝʾµØÖ·http://xingjunli.webs.com/flash/flexChartDemo.swf,ÏÈÀ´¸öͼƬ¿´¿´×îÖÕЧ¹û:
Ïà¹ØÖªÊ¶µã
1¡¢Í¼±íʹÓõÄÎҾͲ»¶à×ö½éÉÜÁË£¬ÍøÉÏÒ²ºÜ¶à¹Ù·½Ò²Óв»´íµÄ½Ì³Ì(²Î¿¼:Skinning ChartItem objects );
2¡¢Òª×Ô¶¨Òåͼ±íSeries,ÎÒÃÇÒª×öµÄ¾ÍÊÇÖØÐ´ProgrammaticSkin»ùÀಢʵÏÖIDataRenderer½Ó¿Ú·½·¨ÖеÄupdateDisplayList·½·¨,ÔÚSeriesÖÐÓ¦ÓÃÎÒÃÇ×Ô¶¨ÒåµÄÍâ¹ÛÀà“drawhelper.histogramSkin”¾ÍºÃÁËÈç:
<mx:ColumnSeries showDataEffect="slideIn" hideDataEffect="slideOut" xField="label" yField="value" itemRenderer="drawhelper.histogramSkin" />
3¡¢ÎÒÃÇÕâÀïʹÓÃGraphicÔÚ2D³¡¾°ÖлæÖÆ£¨3D£©Á¢·½ÌåµÄ·½Ê½»æÖÆSeries£¬ÏÈÀí½âÓ¦ÓÃ3D×ø±ê(ÔÚSeriesÖлæÖÆÊÇ´ÓÏÂÏòÉÏ»æÖƵÄËùÄã¿´µ½µÄ»æÖƹý³ÌÖÐ×ø±êϵ¸ÕºÃÊǵ¹×ª¹ýÀ´µÄ)Èçͼ:
ʵÏÖ¹ý³Ì¼°´úÂë:
1¡¢×Ô¶¨ÒåÁ¢·½Í¼Íâ¹ÛÀࣺ
package drawhelper
{
import flash.geom.Point;
import mx.charts.series.items.ColumnSeriesItem;
import mx.core.IDataRenderer;
import mx.skins.ProgrammaticSkin;
public class solidSkin extends ProgrammaticSkin implements IDataRenderer
{
private var colors:Array = [0x60cb00,0x6a7a88,0x3698ff,0x66a800,0xff6600,0x655fc8,0xd2691e];
private var _chartItem:ColumnSeriesItem;
public function solidSkin()
{
super();
}
public function get data():Object
{
return Object(_chartItem);
}
public function set data(value:Object):void
{
_chartItem = value as ColumnSeriesItem;
invalidateDisplayList();
}
override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
{
super.updateDisplayList(unscaledWidth,unscaledHeight);
this.graphics.clear();
var points:Array = getPoints
Ïà¹ØÎĵµ£º
FlexÖÐͨ¹ý¼Ì³Ð¿ÉÒÔΪÐÂ×é¼þÔö¼ÓÐµĹ¦ÄÜ£¬Èçͨ¹ý×¢Èë·½·¨£¬¸Ä±ä±³¾°É«£¬¸Ä±äλÖú͸߶ȵȡ£ÕâÀïÖ÷ÒªÕÆÎÕÔ×é¼þµÄÒ»Ð©ÌØÐÔ£¬ÊôÐԺͷ½·¨£¬ÒÔ±ã¸ù¾ÝÐèÒªµÄ¹¦ÄܼÓÒÔ¸²Ð´£¨Ò²¿ÉÒÔ×Ô¼ºÀ©Õ¹£©£¬´ïµ½×Ô¼ºÏëÒªµÄЧ¹û¡£ÏÂÃæÊÇÒ»¸ö¼òµ¥µÄÀý×Ó
1¡¢Ð½¨MyDataGrid.as,¼Ì³ÐDataGrid,¸²Ð´drawRowBackground·½·¨£¬×¢ÈërowColorFunction·½ ......
<?xml version="1.0"?>
<!-- charts/PredefinedAxisStyles.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<!--[CDATA[
//µ¼ÈëÏà¹Ø°ü
import mx.collections.ArrayCollection;
import mx.charts.*;
import mx.charts.ser ......
ÔÚ±¾ÏµÁÐÇ°Ãæ¼¸ÆªÎÄÕÂÖзֱð½éÉÜÁËͨ¹ýWebService¡¢HTTPService¡¢URLLoaderÒÔ¼°FielReferenceµÈ×é¼þ
»òÀàÀ´Íê³ÉFlexÓë.NET·þÎñ¶ËµÄͨÐŵÄÏà¹ØÖªÊ¶µã¡£Í¨¹ýÕâЩ·½Ê½À´Íê³ÉÓë·þÎñ¶ËµÄͨÐÅÊǷdz£·½±ãºÍ¼òµ¥µÄ£¬µ«ÓÐËûµÄȱµã¾ÍÊÇͨÐÅÊý¾ÝÁ¿½ÏС£¬ÈçÒª´«
Êä´óÁ¿µÄÊý¾Ý»òÊÇʵÏÖ²»Í¬¶ÔÏóµÄÐòÁл¯´«Ê䣬ËüÃÇÔòÂú×ã²»ÁËÎÒÃǵ ......
First, enough bytes for frame 1 are streamed down to the Flash
Player.
The Flash Player executes those bytes by creating a SystemManager
instance.
SystemManager instruct the Flash Player to stop at the end of frame
1.
SystemManager then goes on to create the Preloader which creates the ......
<mx:TextInput id="userName" maxChars="4" restrict="a-zA-Z" />
restrictÊôÐÔȷʵ¿ÉÒÔÊäÈëÕýÔò±í´ïʽ£¬½øÐÐÊäÈëµÄÑéÖ¤¡£
µ«ÊÇÔÚ³ÌÐòÖ´ÐеÄʱºòÈç¹ûΪuserName.text = "999"»¹ÊÇ¿ÉÒԳɹ¦µÄ¡£
´ýÐø¡£¡£¡£¡£Ñ§Ï°ÖС£¡£¡£ ......