• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

pmasteral

[FLEX] Alterar Cores de um botão

6 mensagens neste tópico

Boa noite,

criei um painel contendo varios CollorPicker's que permitirão alterar o aspecto de uma interfce gráfica.

O processo que tenho feito é associar determinadas propriedades a esses CollorPickers através das propriedades Bindable.

Se para as variaveis que sejam apenas strings, ou inteiros o procesos é trivial. O mesmo não acontece quando as variaveis são array's (por exemplo num degradê de um fundo do botão).

Experiementei esta solução:

- Criei uma função que altera o valor do array, quando é selecionada uma cor diferente da actual.

[bindable]
public var fundoBotao:Array = new Array("#FFEDB5", "#F7D878", "#FFC18E", "#FFA95C");


public function mudaCor(cor:uint, pos:int) : void{
			fundoBotao[pos] = cor;				
		}


....



<mx:ColorPicker change="mudaCor(fundo1.selectedColor, 0)" id="fundo1" selectedColor="#FDDB54" height="18" width="18" />

O problema é que mesmo sendo Bindable, a alteração não é propagada para o botão em causa nesse instante. Para que a cor seja alterada é preciso alterar à posteriori uma propriedade do Botão (por exemplo o rebordo, ou a label).

Tive a ler a documentação do Flex, e este diz que nao é possivel usar Array's como variaveis Bindable, e para tal usar ArrayCollection. A questão é que tentei, e nao tive sucesso.

Resumindo, como devo proceder caso queira que uma alteração num array, seja automaticamente propagada, como acontece com Bindables de Inteiros ou Strings.

Obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não estou familiarizado com o processo....

Se puderes dar umas dicas agradecia.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

com o CSS podes mudar a aparerencia dos componentes q adicionas ao projecto.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

com o CSS podes mudar a aparerencia dos componentes q adicionas ao projecto.

Mas em run-time? Ou só em compile-time?

Cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora