|
[转]Flex学习&积累
; I) ~4 N! x, N2 y' J! N由于项目的需要,需要用到Flex,于是决定自学,在自学的过程中,遇到很多问题,而这些小问题应该积累下来,以方便以后参考。。。嘿嘿。。此文以后不定期更新。
2 c/ H% s) j. o( _0 y* J1。初学者当然要COPY网上的代码,但COPY后常遇到问题,总以为是代码有问题,其实不然。2 }) @8 ~# @/ {( v, q/ D/ w
比如我在网上随便COPY了一段代码(因代码过长,将不影响说明的部分代码删除):
4 L( O/ w$ V) m<?xml version=”1.0″ encoding=”utf-8″?>
- y1 I: a0 Z, C8 a<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml” layout=”absolute” width=”214″ height=”214″>- v2 R( b5 L) G% z" [
<mx:Script>
& P, U- c. y4 ?( E/ G5 U N$ _<![CDATA[
; K' U% P" V6 E& iimport mx.events.CloseEvent;# X) ]0 T2 p3 Y
import mx.controls.Alert;6 {6 F& C r/ [" K
import flash.net.navigateToURL;2 m5 o. n! S3 `. x( d
//由于fms使用的是amf0而flex3中的as3默认使用的是amf3.所以要让flex使用AFM0
- W1 r! k1 n: |4 ]: oNetConnection.defaultObjectEncoding = ObjectEncoding.AMF0;
" w, T0 F8 @" @2 l/ g% _private static const DEFAULT_WIDTH:Number = 160; //摄像头显示高度7 B+ B8 u# P; N) B
private static const DEFAULT_HEIGHT:Number = 120; //摄像头显示高度4 q' G) a N, Y4 b4 j5 K% r
private var m_camera:Camera; //定义一个摄像头
, a* f8 B }$ Qprivate var m_microphone:Microphone; //定义一个麦克风! x1 R" `1 Z$ n' Z2 D
private var m_localVideo:Video; //定义一个本地视频4 |; g7 Z6 c' C. p! I8 E
private var m_netConnection:NetConnection; //定认一个网络连接
, }1 w! k; E; o7 S# Nprivate var m_outStream:NetStream; //定义一个输出流0 b! Y: C8 _# I- U) ^2 ?. Z5 m+ c
private var m_fmsServer:String; //视频服务器地址+ G @$ U. l/ P P# v
private var m_userId:String; //用户ID; [) K2 J. P& m6 W# n
]]>
, X% `) u& u# I7 B# P3 T- Z</mx:Script>7 V6 P; J. i! ^$ C
<mxanel x=”16″ y=”16″ width=”180″ height=”162″ layout=”absolute” title=”在线认证视频” fontSize=”12″> o" @; m2 S: i8 |- t+ V l4 S; a" K
<mx:VideoDisplay id=”t_vd_Video” width=”160″ height=”120″/>: b' L) E, Z2 \0 ]* G5 I! L
</mxanel>
: H: A7 f% }4 C3 _, O<mxabel id=”t_lbl_Info” x=”14″ y=”184″ text=”视频认证就绪” fontSize=”12″ color=”#FFFFFF”/>
6 j' t' c& }' b( `3 J) p: \</mx:Application> t- G! C5 K1 J( U+ m0 m8 w
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
: _# v0 b( F; V//上面的代码,在flex builder上,是运行不了的。出现了莫明其妙的错误,原因在于符号″,应该改成“ 。1 j6 \% v0 }# m
//在Edit->Find/Replace-->Replace All可令全文更改,更改了之后,还是有错误,原因在于:
5 U4 K/ J% r( o1 V6 z% Q* f/ J5 [5 C<mxanel x="16" //注意,这里数字的右分号和数字一样是红色的,要将红色的右分号改成黑色即可。
" w: M# M5 M s J2 q$ z" U2 o. l* G; i
2。显示手型图标。, |2 P, }+ f* Q$ X: Y/ l5 @4 |
显示手型图标在大部分的控件上都是一样的,如下(仅以Button,Label,Panel为例子):3 T2 n. _. }0 f6 P0 N2 P
<?xml version="1.0" encoding="utf-8"?>
1 _) o8 @' G. q& g* V5 E6 X0 a1 D8 h<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">* z1 l( b0 z2 z; `) }+ v
<mx:Button x="115" y="79" label="Button"
8 ~: g6 }- j8 G( W butt useHandCursor="true" />
5 v& H7 @8 @9 l3 f2 { " r2 S* y2 K+ g3 T% \3 ~+ u A
<mxabel x="35" y="173" text="Label"9 l1 M* f. ~9 q) P
butt useHandCursor="true" //除了在Label上显示不出来,其它大部分的控件都可以的。8 l5 Z K9 _; a6 M- c3 ~' w
mouseChildren="true" width="116" height="72"/>
/ C6 @+ w( W. b$ I$ Z- \
( j N; }* a% K D0 l, C8 U<mxanel x="210" y="45" width="250" height="200" layout="absolute"
. Z5 s% \* o' U* V butt useHandCursor="true" >
! @ h2 y" G+ r1 e7 n</mxanel>6 C; u$ n, Y& I4 n3 N
</mx:Application>6 h" L9 F* N7 J- k# J7 Y% Q7 R
" C1 {7 v; q- g! m! \0 B! a' M
学了很长时间,发现自己走了一些弯路。由于Flex涉及内容较多,完全自学不看相关资料,还是比较费力。前一段时间在网上看到一本书机械的《Flex完全自学手册》,感觉不错。。买了一本。很快就发现把自己一直疑惑的问题给解决了。所以,这里给大家推荐一下。具体内容可以参考:http://www.china-pub.com/209227。 |
|