Avec le SDK Flex 3, vous devez simplement définir le style borderThickness sur 0 ou définir borderStyle sur none. Avec le SDK Flex 4 et le thème Spark, cela n'a aucun effet.Comment supprimer la bordure d'un composant Flex 4 TextArea (halo sur le thème spark)
Répondre
Vous devez définir le borderSkin null
<mx:TextArea borderSkin={null} />
Je ne l'ai pas encore tâté dans Flash Builder 4, mais je sais que dans Flex 3, vous pouvez modifier des choses comme ça (quand ce ne est pas possible une autre façon):
var tb:TextInput = new TextInput();
tb.getChildAt(0).setStyle(...);
voudrez peut-être pour cette solution , vous avez juste besoin de trouver l'élément enfant correct habituellement.
EDIT: Here's your answer
Essayez quelque chose comme:
borderVisible="false"
Jeol votre réponse fonctionne pour les composants MX, pour le flex 4 composant spark textarea vous définissez borderVisible = "false" et dans le code lblMessage.setStyle ("contentBackgroundAlpha", 0);
De plus, si vous faites cela, vous voulez probablement le hack pour faire la autosize chose sacrément à son contenu ... 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);
}
... et Merci pour RobotLegs , c'est génial!
bien que j'ai essayé le code ci-dessus, mais il ne fonctionne pas pour moi Flex Hero SDK 4.5, donc ce que j'ai-je choisi le textArea et créé une nouvelle peau personnalisée et changer l'alpha frontière à 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>
simple et doux
Si vous souhaitez supprimer la frontière de étincelle TextArea, voici quelques façons de le faire: pour toutes textareas d'allumage n'a pas de frontière, vous pouvez le faire:
s|TextArea {
borderVisible : false;
}
Vous pouvez également faire un style simple et les appliquer uniquement à textareas d'allumage spécifiques comme ceci:
.noBorder {
borderVisible : false;
}
...
<s:TextArea styleName="noBorder"/>
Vous pouvez désactiver par la création complète comme ceci:
<s:Application ...
creationComplete="onCreationComplete()"/>
...
private function onCreationComplete() : void {
mySparkTextArea.setStyle('borderVisible', false);
}
...
<s:TextArea id="mySparkTextArea"/>
</s:Application>
Enfin, vous peut rendre un skin, comme suggéré par DrMaxmAd, comme ceci:
...
<!-- 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>
...
Dans Flex 3: La bordure du composant TextArea peut être contrôlée par nous ces deux attributs ing/propriétés:
- borderSkin = "{null}"
- focusAlpha = "0"
Mise au point alpha garantit que vous ne recevez pas la frontière montrant même lorsque la TextArea est sélectionné.
La question concerne spark.components.TextArea, pas mx.controls.TextArea –
pas à la fois. C'était en version bêta si je me souviens bien. –