Eu apostava no BindingUtils :)

2009/7/15 Mário Júnior <juninho...@gmail.com>:
> ChangeWatcher ... BindingUtils ... ObjectProxy.... enfim.. alternativas não
> faltam.
>
> 2009/7/15 ClaudioAraujo <claudioarauj...@gmail.com>
>>
>> Entendi, você pode usar ChangeWatcher.watch(this,'esperado',
>> funcaoalteravalores);
>>
>> sendo que "funcaoalteravalores" é uma função que altera os valores que
>> você quer.
>>
>> espero que ajude.
>>
>>
>>
>> Claudio Araujo.
>>
>>
>> clau...@bindable.com.br
>> http://www.bindable.com .br
>> http://www.bindable.com.br/blog
>>
>>
>> On 15 jul, 13:35, Bruno Carneiro <guimaraescarne...@gmail.com> wrote:
>> > Bom, a melhor forma de explicar é mostrando o código.
>> >
>> > Eis aqui o meu componente cad_lanc.mxml:
>> >
>> > <mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml"; width="74"
>> > height="24">
>> >
>> >         <mx:Script>
>> >                 <![CDATA[
>> >                         private var qt:int = 0;
>> >
>> >                         /*Valor esperado de acordo com o número de
>> > alunos matriculados*/
>> >                         [Bindable]
>> >                         public var esperado:int = 0;
>> >
>> >                         private function checkChange():void{
>> >                                 if (this.chkbox.selected) {
>> >                                         qt = this.esperado;
>> >                                         this.quantidade.value =
>> > this.esperado;
>> >                                         this.quantidade.enabled = false;
>> >                                 }
>> >                                 else {
>> >                                         this.quantidade.enabled = true;
>> >                                         qt = this.quantidade.value;
>> >                                 }
>> >                         }
>> >
>> >                         private function quantChange():void{
>> >                                 qt = this.quantidade.value;
>> >                         }
>> >
>> >                         public function value():int{
>> >                                 return this.qt;
>> >                         }
>> >
>> >                 ]]>
>> >         </mx:Script>
>> >
>> >         <mx:Label x="1" y="3" text="{this.label}" id="text"/>
>> >         <mx:CheckBox y="3" id="chkbox" textAlign="left" x="23"
>> > change="checkChange()" />
>> >         <mx:NumericStepper x="38" y="2" width="34" height="20"
>> > id="quantidade" minimum="0" maximum="9" change="quantChange()"/>
>> >
>> > </mx:Canvas>
>> >
>> > E é dessa forma que eu o uso:
>> > <auxiliar:cad_lanc x="10"  y="148"  id="check1"   label="01:"
>> > esperado="{this.nexemplares}" />
>> >
>> > Como podem ver, a variável esperado é preenchida aqui com o valor de
>> > uma variável bindable que vem da minha aplicação.
>> >
>> > Só que no meu componente, a variavel esperado também é bindable e
>> > nessa parte do código indicada pela seta
>> >
>> > private function checkChange():void{
>> >                                 if (this.chkbox.selected) {
>> >                                         qt = this.esperado;
>> >  <===========
>> >                                         this.quantidade.value =
>> > this.esperado;   <=============
>> >                                         this.quantidade.enabled = false;
>> >                                 }
>> >
>> > Eu gostaria que esses valores mudassem junto com a variavel esperado.
>> >
>> > Ou seja, eu queria por exemplo que a linha em Action Script
>> > this.quantidade.value = this.esperado;   <=============
>> >
>> > fosse equivalente à
>> > <mx:NumericStepper id="quantidade"  value="{this.esperado}" />
>> >
>> > Dessa forma, quando na minha aplicação a variável nexemplares fosse
>> > alterada, automaticamente a variável esperado também seria, e
>> > consequentemente os valores nos meus numerc steppers também.
>> >
>> > Alguma idéia?
>>
>
>
>
> --
> Mário Júnior
> Programador Java / Adobe Flex
> http://blog.mariojunior.com
>
> >
>



-- 
Atenciosamente, Pergentino.

--~--~---------~--~----~------------~-------~--~----~
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 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a