Olá Ricardo,

Eu não achei a sua solução tão ruim assim. Para mim, POGs
questionáveis são aqueles cuja solução limpa está na nossa cara e por
falta de conhecimento damos uma volta enorme para fazer algo que de
outra forma ficaria bem melhor. Não creio que seja este o caso. O que
você quer fazer o Flex não atende "por default" e por isso você foi
obrigado a implementar uma solução. A única coisa que eu faria
diferente seria sobre-escrever a propriedade "errorString", chamar o
invalidadeProperties e mudar a cor da borda apropriadamente no
"commitProperties". Acho que isso seria mais direto do que criar uma
propriedade "border" e fazer o "binding" no creationComplete. De
qualquer forma, acho que ambas as soluções são facilmente
compreendidas por qualquer programador Flex, de modo que a solução é
boa.

[]'s
Beck Novaes

On Apr 1, 4:33 pm, Ricardo Ramires <[EMAIL PROTECTED]> wrote:
> Pessoal, to com o seguinte problema, eu tava usando na minha aplicacao
> um sistema de validacao que eu mesmo criei, aii se eu considerava o
> valor dos campos como nao valido eu setava a errorString = "minha
> mensagem de erro" e se valido  errorString = "", ele mostra a msg no
> label vermelho e mostra a borda vermelha no component... tudo funciona
> beleza pros components do proprio flex
>
> Mas qdo eu crio um component a partir do, Canvas, VBox ou Hbox a borda
> nao aparece, só o tooltip aii eu fiz o q considero uma gambiarra criar
> um getter setter e bindar a propriedade errorString nessa nova
> variavel:
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml";
>         horizontalAlign="center" verticalAlign="middle"
>         verticalScrollPolicy="off" horizontalScrollPolicy="off"
>         creationComplete="creationCompleteHandler(event)">
>
>         <mx:Script>
>                 <![CDATA[
>
>                     //----------------------------------
>                     //  borderError
>                     //----------------------------------
>
>                         private var _borderError:String;
>                         [Bindable]
>                         public function get borderError():String
>                         {
>                                 return _borderError;
>                         }
>                         public function set borderError(value:String):void
>                         {
>                                 if(value == "")
>                                 {
>                                         setStyle("borderStyle", "none");
>                                 }
>                                 else
>                                 {
>                                         setStyle("borderStyle", "solid");
>                                         setStyle("borderColor", 0xFF0000);
>                                 }
>                                 _text = borderError;
>                         }
>
>                         private function 
> creationCompleteHandler(event:FlexEvent):void
>                         {
>                                 BindingUtils.bindProperty(this, 
> "borderError", this,
> "errorString");
>                         }
>
>                 ]]>
>         </mx:Script>
>
> </mx:HBox>
>
> Funciona, mas to achando muita porquice, alguem tem uma idéia melhor?
>
> Grato,
>
> Ricardo Ramires
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Reply via email to