初学者的flex问题
先看代码:<?xmlversion="1.0"encoding="utf-8"?><s:Applicationxmlns:fx="http://ns.adobe.com/...
先看代码:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" >
<fx:Script>
<![CDATA[
protected function aa():void
{
if (ys.selectedColor.toString(16)=="ffffff")
wb.setStyle("color",000000);
else
wb.setStyle("color",ys.selectedColor);
}
]]>
</fx:Script>
<mx:ColorPicker x="19" y="17" selectedColor="#FFFFFF" id="ys" change="aa()"/>
<s:Label x="18" y="67" text="颜色" height="20" id="wb"/>
</s:Application>
问题:
为什么我把<s:Label x="18" y="67" text="颜色" height="20" id="wb"/>改成这样时:<s:Label x="18" y="67" text="颜色" height="20" id="wb" color="{ys.selectedColor}"/>在color的后面要加上{}的符号,而在上面的<fx:Script></fx:Script>代码中却可以打成:wb.setStyle("color",ys.selectedColor)。
请问为什么?
那为什么在代码<fx:Script></fx:Script>里面就不用加{}咧? 展开
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" >
<fx:Script>
<![CDATA[
protected function aa():void
{
if (ys.selectedColor.toString(16)=="ffffff")
wb.setStyle("color",000000);
else
wb.setStyle("color",ys.selectedColor);
}
]]>
</fx:Script>
<mx:ColorPicker x="19" y="17" selectedColor="#FFFFFF" id="ys" change="aa()"/>
<s:Label x="18" y="67" text="颜色" height="20" id="wb"/>
</s:Application>
问题:
为什么我把<s:Label x="18" y="67" text="颜色" height="20" id="wb"/>改成这样时:<s:Label x="18" y="67" text="颜色" height="20" id="wb" color="{ys.selectedColor}"/>在color的后面要加上{}的符号,而在上面的<fx:Script></fx:Script>代码中却可以打成:wb.setStyle("color",ys.selectedColor)。
请问为什么?
那为什么在代码<fx:Script></fx:Script>里面就不用加{}咧? 展开
展开全部
<fx:Script></fx:Script>里面的是代码,比如你的:
<![CDATA[
protected function aa():void
{
if (ys.selectedColor.toString(16)=="ffffff")
wb.setStyle("color",000000);
else
wb.setStyle("color",ys.selectedColor);
}
]]>
<s:Label x="18" y="67" text="颜色" height="20" id="wb" color="{ys.selectedColor}"/>而这里的是标签,标签里只能是定值,比如 height="20",这里的20什么的都是定量,但是color这里要加代码变量所以要加"{}"区分,不然编译器会以为,color的值为"ys.selectedColor"这串字符,
而这串字符是没有意义的
<![CDATA[
protected function aa():void
{
if (ys.selectedColor.toString(16)=="ffffff")
wb.setStyle("color",000000);
else
wb.setStyle("color",ys.selectedColor);
}
]]>
<s:Label x="18" y="67" text="颜色" height="20" id="wb" color="{ys.selectedColor}"/>而这里的是标签,标签里只能是定值,比如 height="20",这里的20什么的都是定量,但是color这里要加代码变量所以要加"{}"区分,不然编译器会以为,color的值为"ys.selectedColor"这串字符,
而这串字符是没有意义的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询