Pessoal eu tenho uma lista de empresas( nome, endereco, telefone, cep, nome do representante, etc) e gostaria de listar isso tudo um embaixo do outro e possivel fazer isso com um List, ou DataGrid, ou o melhor e eu criar um componente (exemplo um HBox) com todas essas informacoes e vou adicionando um para cada empresa??
valeu
Obs: Queo mostrar os dados nao um do lado do outro pois nao tenho mto espaco de largura, a ideia era algo assim:
Empresa x
Endereco: tal Numero Tal Cep Tal
…
Opa, olha esse código. Tem alguns exemplos pra você!
Dica 1: Se for usar algum dos esquemas com itemRenderer, faça numa classe separada. Fiz na mesma classe para ficar mais fácil de entender.
Dica 2: Nesse exemplo, eu fiz objetos sem tipo. Quando for usar, faça o objeto e converta o “data” dentro do itemRenderer: var empresa:Empresa = data as Empresa;
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal" verticalAlign="middle">
<mx:Script>
<![CDATA[
[Bindable]
private var empresas:Array = [
{nome: "DClick", telefone: "(11) 5555-0000", email: "contato@dclick.com.br"},
{nome: "Caelum", telefone: "(11) 3465-2020", email: "caelum@caelum.com.br"},
{nome: "Adobe", telefone: "(11) 4040-2020", email: "adobe@adobe.com"},
{nome: "XPTO", telefone: "(21) 3443-3029", email: "alo@xpto.net"}
];
]]>
</mx:Script>
<mx:Panel height="220" width="250"
title="List">
<mx:List dataProvider="{empresas}" height="100%" width="100%"
alternatingItemColors="{[0xFFFFFF, 0xEAEAEA]}">
<mx:itemRenderer>
<mx:Component>
<mx:VBox>
<mx:Label text="{data.nome} - {data.telefone}"/>
<mx:Label text="{data.email}" color="#0000FF"
buttonMode="true" mouseChildren="false"/>
</mx:VBox>
</mx:Component>
</mx:itemRenderer>
</mx:List>
</mx:Panel>
<mx:Panel height="220" width="250"
title="Repeater">
<mx:Repeater id="rpEmpresas" dataProvider="{empresas}">
<mx:VBox>
<mx:Label text="{rpEmpresas.currentItem.nome} - {rpEmpresas.currentItem.telefone}"/>
<mx:Label text="{rpEmpresas.currentItem.email}" color="#0000FF"
buttonMode="true" mouseChildren="false"/>
</mx:VBox>
</mx:Repeater>
</mx:Panel>
<mx:Panel height="220" width="250" horizontalAlign="center" verticalAlign="middle"
title="ComboBox">
<mx:ComboBox dataProvider="{empresas}" labelField="nome"
dropdownWidth="210">
<mx:itemRenderer>
<mx:Component>
<mx:VBox>
<mx:Label text="{data.nome} - {data.telefone}"/>
<mx:Label text="{data.email}" color="#0000FF"
buttonMode="true" mouseChildren="false"/>
</mx:VBox>
</mx:Component>
</mx:itemRenderer>
</mx:ComboBox>
</mx:Panel>
</mx:Application>