Se quiser montar o seu menubar utilizando ArrayCollection, sem precisar usar
xml... dá uma olhada neste link

http://flexoop.com/2008/11/menuitem-class/

<http://flexoop.com/2008/11/menuitem-class/>talvez dê para ter
uma idéia legal. Já utilizei em alguns projetos algo parecido com isso

Att.
--
Lincoln T. do Nascimento Silva
Informática Biomédica - FFCLRP/FMRP
USP - Ribeirão Preto


2010/8/18 Diego Feijó <dfs...@ig.com.br>

> Segue um exemplo que fiz.
>
> http://diegofeijo.wordpress.com/2010/02/19/flex3-tree-dinamico-com-xml/
>
> On 18 ago, 10:12, Samuel Soares <samuelesoa...@gmail.com> wrote:
> > Bom dia, tenho que montar o menubar da minha aplicação de forma
> > dinâmica: o usuário faz o login, após isso o menu é montado de acordo
> > com as pemissões de acesso do usuário. Se o usuário não tem acesso a
> > uma opcao o menu aparece desabilitado. Sei que tenho que passar o
> > parametro 'enabled' como false;
> >
> > Estou tentando com ArrayCollection:
> >
> > 1. se eu montar primeiro o arraycollection na inicialização, ele
> > funciona, mas não consigo alterar o 'enabled' do menu:
> >
> > [Bindable]
> > private var menuArrc:ArrayCollection = new ArrayCollection(
> >         [{label:"Cadastros" enabled:'false', children:[{label:" Clientes
> "},
> > {label:" Outros ",children:[{label:" Qqualuqer coisa"}]}]},
> >         {label:" Vendas ", children:[{label:"Teste "}]},
> >         {label:"Consultas ", children:[{label:"Teste "}]},
> >         {label:"Relatórios ", children:[{label:" Teste "}]}
> >         ]);
> >
> > <mx:MenuBar id="menu" y="93" left="10" right="10" height="25"
> > dataProvider="{menuArrc}" itemClick="Menu_Click(event);"></mx:MenuBar>
> >
> > 2. se eu montar o arraycollection após o login, o menu fica [object
> > Object] e aparece somente o menu principal, seus sub-menus nem
> > aparecem:
> >
> > private var menuArrc:ArrayCollection = new ArrayCollection();
> >
> > private function login():void
> > {
> >         ...
> >
> >         MontaMenu();
> >
> >         ...
> >
> > }
> >
> > private function MontarMenu():void
> > {
> >         menuArrc.addItem([{label:"Cadastros", children:[{label:" Clientes
> "},
> > {label:" Outros ",children:[{label:" Qqualuqer coisa"}]}]}]);
> >
> > }
> >
> > <mx:MenuBar id="menu" y="93" left="10" right="10" height="25"
> > dataProvider="{menuArrc}" itemClick="Menu_Click(event);"></mx:MenuBar>
> >
> > 3. Eu até usei o xmllist, como na documentação, mas o problema sempre,
> > como nos outros, é que tenho que alterar os dados do menu após o
> > login. Eu não consegui alterar o item do menu, usando o xmllist. Por
> > exemplo, alterar o atributo 'enabled';
> >
> > alguém tem alguma idéia de como resolver? Obrigado.
>
> --
> 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
>

-- 
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