使用Flex 3 SDK,您只需将borderThickness样式设置为0,或将borderStyle设置为none。使用Flex 4 SDK和Spark主题,这没有任何效果。
答案 0 :(得分:9)
尝试类似:
borderVisible="false"
答案 1 :(得分:2)
如果你想从 spark 删除边框,TextArea可以通过以下方式解决问题: 要使所有spark TextAreas都没有边框,你可以这样做:
s|TextArea {
borderVisible : false;
}
你也可以制作一个简单的样式,只将它们应用于特定的Spark TextAreas,如下所示:
.noBorder {
borderVisible : false;
}
...
<s:TextArea styleName="noBorder"/>
你可以通过创建完成来关闭它:
<s:Application ...
creationComplete="onCreationComplete()"/>
...
private function onCreationComplete() : void {
mySparkTextArea.setStyle('borderVisible', false);
}
...
<s:TextArea id="mySparkTextArea"/>
</s:Application>
最后,根据DrMaxmAd的建议,你可以制作一个皮肤,如下所示:
...
<!-- border/fill -->
<s:Rect left="0" right="0" top="0" bottom="0">
<s:stroke>
<s:SolidColorStroke color="#5C5C5C" weight="1" alpha="0"/>
</s:stroke>
<s:fill>
<s:SolidColor color="#FFFFFF"/>
</s:fill>
</s:Rect>
...
答案 2 :(得分:1)
我还没有涉足Flash Builder 4,但我知道在Flex 3中你可以修改这样的东西(当不可能采用其他方式时):
var tb:TextInput = new TextInput();
tb.getChildAt(0).setStyle(...);
可能想尝试一下,你只需要找到正确的子元素。
答案 3 :(得分:1)
您必须将borderSkin设置为null
<mx:TextArea borderSkin={null} />
答案 4 :(得分:0)
Jeol您的回答适用于MX组件,对于您设置borderVisible =“false”的flex 4 spark textarea组件,以及代码lblMessage.setStyle(“contentBackgroundAlpha”,0);
另外,如果你这样做,你可能希望hack使该死的东西自动调整它的内容... set heightInLines =“{NaN}”
<s:TextArea borderVisible="false" focusEnabled="false" width="100%" id="lblMessage" heightInLines="{NaN}" editable="false" selectable="true" lineBreak="toFit" verticalScrollPolicy="off" horizontalScrollPolicy="off" />
protected function OnCreationComplete(objEvent:Event):void{
lblMessage.setStyle("contentBackgroundAlpha", 0);
}
...并且感谢RobotLegs,这真是太棒了!
答案 5 :(得分:0)
我已经尝试了上面的代码,但它对我的Flex Hero SDK 4.5不起作用,所以我选择textArea并创建了一个新的自定义皮肤并将边框alpha更改为0。
<!-- border/fill -->
<s:Rect left="0" right="0" top="0" bottom="0">
<s:stroke>
<s:SolidColorStroke color="#5C5C5C" weight="1" alpha="0"/>
</s:stroke>
<s:fill>
<s:SolidColor color="#FFFFFF"/>
</s:fill>
</s:Rect>
简单又甜蜜
答案 6 :(得分:0)
在Flex 3中:可以使用以下两个属性/属性来控制TextArea组件的边框:
焦点alpha确保即使选择了TextArea也不会显示边框。