Ex.: <meupackage:MeuComponente id="meuComponente" />
Atenciosamente,
Fábio Goll
Giancarlo Faccio Hammes escreveu:
> ------=_NextPart_000_0061_01C745D8.D4F95130
> Content-Type: text/html; charset=iso-8859-1
> Content-Transfer-Encoding: quoted-printable
> X-Google-AttachSize: 1442
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
> <HTML><HEAD>
> <META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
> <META content="MSHTML 6.00.5730.11" name=GENERATOR>
> <STYLE></STYLE>
> </HEAD>
> <BODY bgColor=#ffffff>
> <DIV><FONT face=Arial size=2>Bom dia Senhores,</FONT></DIV>
> <DIV><FONT face=Arial size=2>estou separando meus pojetos em componentes e
> adicionando-os ao meu mxml principal através de mxmlns. Porém, o compilador me
> avisa que não posso definir uma id pra tag root dos meus componentes. Então como
> posso manipula-los através de scripts sendo que não posso chama-los? Estou
> fazendo a coisa certa? Existe outra forma de organizar meu mxml em outros
> arquivos e fazer "includes" no main?</FONT></DIV>
> <DIV><FONT face=Arial size=2>Agradeço a atenção de todos.</FONT></DIV>
> <DIV> </DIV>
> <DIV><FONT face=Arial size=2></FONT> </DIV>
> <DIV><FONT face=Arial size=2></FONT> </DIV>
> <DIV><FONT face=Arial size=2>--<BR>Giancarlo Faccio Hammes<BR>Analista de
> T.I<BR>Setor de Tecnologia da Informação<BR>Unimed Extremo Oeste
> Catarinense<BR>email: <A
> href="mailto:gian...@unimedsc.com.br">gian...@unimedsc.com.br</A><BR>msn: <A
> href="mailto:gian...@hotmail.com">gian...@hotmail.com</A><BR>skype:
> nefariun_ec<BR>(49) 36312204<BR>(49) 88012357 (Celular
> TI)</FONT></DIV></BODY></HTML>
>
> ------=_NextPart_000_0061_01C745D8.D4F95130--
Giancarlo,
Como já foi explicado, pode usar this para referênciar o componente em questão.
Se usar
<mx:Canvas xmlns:mx=”blablablala” >
<mx:Script>
Function minhafuncao():void{
this.width = this.width + 30;
}
</mxScript>
</mx:Canvas>
O que vai fazer é quando chamar a função minhafuncao, o seu componente vai aumentar de 30 pixeis em largura. O scope this referece sempre ao componente externo onde se está a executar o código. Não precisa de dar um id ao seu componente, aliás, não consegue mesmo.
João Fernandes
<BR<BR
O melhor é usar um singleton e fazer um bind da propriadade a uma propriadade desse singleton. Depois basta alterar a propriadade no singleton e o seu canvas altera automaticamente.
Exemplo
No seu b_menuprinc
click=”myModelLocator.getInstance().meuCavasVisivel = myModelLocator.getInstance().meuCavasVisivel == true? false:true”
e no seu canvas
<mx:Canvas visible=”{ myModelLocator.getInstance().meuCavasVisivel }” includeInLayout=”{ myModelLocator.getInstance().meuCavasVisivel }”/>
myModelLocator e um AS deste genero
package
{
[Bindable]
public class GeralModelLocator
{
private static var modelLocator: myModelLocator;
public static function getInstance() : myModelLocator
{
if ( modelLocator == null )
modelLocator = new myModelLocator ();
return modelLocator;
}
public function myModelLocator ()
{
if (myModelLocator.modelLocator != null )
throw new Error( "Only one myModelLocator instance should be instantiated" );
}
public var meuCavasVisivel:Boolean=true;
<BR