Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

kika

Combo box ou Menu Drop Down

Recommended Posts

Tenho uma área em meu site que preciso definir onde meu cliente tem lojas, então quando o usuário clicar no item Estado, ele terá a opção de Escolher Rio de Janeiro e São Paulo, se ele clicar no Rio de Janeiro deverá aparecer o endereço de todas as lojas do Rio de Janeiro e assim também em São Paulo...todas essa informações no mesmo swf.

Meu site é todo em Flash e minha dúvida é se isso seria uma Combo box ou um Menu Drop Down, já até encontrei alguns exemplos pela internet mas não me ajudaram, pois eles sempre linkam para urls ou tem ligação com xml e isso na verdade no meu código atual não me ajuda.

 

Alguém sabe de algum tutorial bom?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tutorial não sei...

 

Mas quanto ao combo box basta usar o evento change do combobox para mudar o conteudo de outro combobox que você setar como ;)

Ai ele só vai pegar os valores relacionados aos dados que você mostrar como referencia.

 

Exemplo AS 2.0

/*
* Para que esse código funcione é necessário um combobox na biblioteca de seu flash
*/
import mx.controls.ComboBox;
var obj:Object = new Object();
var estado:ComboBox = _root.createClassObject(ComboBox, 'estado', 1, {_y: 0});
var lugares:ComboBox = _root.createClassObject(ComboBox, 'lugares', 2, {_y: 25});

estado.addItem(" ");
estado.addItem({data:2, label:"são paulo"});
estado.addItem({data:3, label:"rio de janeiro"});

estado.setSize(200, 20);
lugares.setSize(250, 20);

estado.addEventListener('change', obj);

obj.change = function(){
 trace(estado.selectedIndex)
 switch(estado.selectedIndex){
 case 1:
 lugares.removeAll();
 lugares.addItem({data:1, label:"Rua Tutoia 815"});
 lugares.addItem({data:2, label:"Rua Augusta 28"});
 lugares.addItem({data:3, label:"Av. Paulista 815"});
 lugares.addItem({data:4, label:"Av. Brigadeiro Luis Antonio 759"});
 break;
 case 2:
 lugares.removeAll();
 lugares.addItem({data:1, label:"Av. Nossa Senhora de Copacabana 15"});
 lugares.addItem({data:2, label:"Av. Atlantica 1450"});
 lugares.addItem({data:3, label:"Rua Larangeiras 15"});
 break;
 default:
 lugares.removeAll();
 }
}

 

Espero que ajude

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

berseck...estava com outros trabalhos e acabei deixando esse código pra lá...mas estou precisando colocar ele para funcionar, então testei agora e funcionou, mas na verdade não quero que um Combobox chame outro Combobox, o que estou tentando fazer é quando clicar em Rio de Janeiro aparecer na mesma página o endereço das lojas de acordo com o estado.

 

Por Exemplo: Dentro da ComboBox tenho: Rio de Janeiro / São Paulo / Brasília

Cliquei no Rio de Janeiro

Aí na própria página aparece:

 

Barra Shopping

Av. das Américas, 4666 Barra da Tijuca.

Tel.:(21) 4003-4131

 

Rio Sul

R. Lauro Müller, 116 - Botafogo

Rio de Janeiro - RJ, 22290-160

0xx)21 2122-8070

 

E assim sucessivamente para os outros estados...continuo procurando pela internet algum exemplo ou tutorial mas não acho nada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Com o exemplo do berseck da pra fazer o que você quer, basta ao inves de usar outra combo faça outra coisa no evento change.

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não faço idéia de que outra coisa usar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi berseck, de fato sua idéia é ótima...mas eu sinceramente não sei nem como começar. Pois nesse caso de uma ComboBox chamando um XML não sei como fazer

Compartilhar este post


Link para o post
Compartilhar em outros sites

No caso ali você vai ter que carregar

dentro do switch você vai dar um load no XML que você tem interesse...

 

Exemplo:

/*
* Para que esse código funcione é necessário um combobox na biblioteca de seu flash
*/
import mx.controls.ComboBox;
var obj:Object = new Object();
var estado:ComboBox = _root.createClassObject(ComboBox, 'estado', 1, {_y: 0});

var xml:XML = new XML();
xml.ignoreWhite = true;

estado.addItem(" ");
estado.addItem({data:2, label:"são paulo"});
estado.addItem({data:3, label:"rio de janeiro"});

estado.setSize(200, 20);

estado.addEventListener('change', obj);

obj.change = function(){
 trace(estado.selectedIndex)
 switch(estado.selectedIndex){
 case 1:
 xml.load("saopaulo.xml");
 break;
 case 2:
 xml.load("riodejaneiro.xml");
 break;
 }
}

xml.onLoad = function(){
// Aqui faz a função de carregamento do seu XML que vai repetir varias vezes
}

Entendeu o espirito da coisa?

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.