[RESOLVIDO]Passar valor para MDI no Flex 4?

4 respostas
chamuska

Pessoal, tenho uma janela MDI no Flex e preciso setar o valor de uma variavel do sistema para a janela quando ela abre.
Tem como fazer isso ?

Estou criando a janela usando essa função:

public function iniciaMDI():void
                        {
                                
                                //definition é o tipo da classe de acordo com a propriedade data do XML item
                                var definition:Class = getDefinitionByName('telas.modulo1.Tela1') as Class;

                                //através do definition, gera uma instancia nova. Uma nova janela
                                var myInstance:MDIWindow = new definition();
                                
                                //Adiciona a instancia ao mdiCanvas da aplicação,
                                // mesmo que o tipo/instancia seja de outro módulo
                                mdiCanvas.windowManager.add(myInstance);
                        }

Como que da para fazer ?

Obrigado!

4 Respostas

Ivan_Alves

Geralmente uso um método publico dentro da minha MDI que recebe o objeto por exemplo

public function recebeValor(teste:Object):void{
      this.obj = teste;
}

ao declarar sua MDI você chama esse método passando o parametro por exemplo, mais ou menos assim

var telaTeste:FrmMDI = new FrmMDI;
telaTeste.recebeValor(new Object()); //aqui chamo meu método que recebe um parametro

//em seguida mostro na tela...

faço isso no Flex 3 mais acredito que seja a mesma coisa para o 4, qualquer coisa fala aí, flw!

chamuska
Ivan Alves:
Geralmente uso um método publico dentro da minha MDI que recebe o objeto por exemplo
public function recebeValor(teste:Object):void{
      this.obj = teste;
}

ao declarar sua MDI você chama esse método passando o parametro por exemplo, mais ou menos assim

var telaTeste:FrmMDI = new FrmMDI;
telaTeste.recebeValor(new Object()); //aqui chamo meu método que recebe um parametro

//em seguida mostro na tela...

faço isso no Flex 3 mais acredito que seja a mesma coisa para o 4, qualquer coisa fala aí, flw!

Mas dai eu tenho que chamar a janela MDi de forma diferente da que estou fazendo ou da para usar nesse código que postei ai no inicio ?!

Obrigado!

Ivan_Alves

Realmente nunca usei esse código seu, mas tem como fazer assim dentro da sua classe MDI por exemplo

dessa forma ele chamará um método do seu Application que chamou a sua tela MDI, agora como eu te disse eu crio um componente MXML do tipo MDIWindows e uso aquele código que te disse em seguida mostro na tela e tudo funciona perfeitamente, flw!

chamuska

Ivan Alves:
Realmente nunca usei esse código seu, mas tem como fazer assim dentro da sua classe MDI por exemplo

dessa forma ele chamará um método do seu Application que chamou a sua tela MDI, agora como eu te disse eu crio um componente MXML do tipo MDIWindows e uso aquele código que te disse em seguida mostro na tela e tudo funciona perfeitamente, flw!

Valeu!
Deu certo@!

Criado 17 de setembro de 2011
Ultima resposta 21 de set. de 2011
Respostas 4
Participantes 2