this representa o escopo atual, não a classe! Principal motivo de confusão em closures (anonymous delegates).
ex.:
public class foo()
{
public function bar():void
{
var x:Object = this; // x é do tipo foo
callLater(function():void
{
var y:Object = this; // y é um delegate anônimo (funct...@000000)
});
}
}
From: Marcel Pigozzi
Sent: Monday, December 07, 2009 11:35 AM
To: [email protected]
Subject: [flexdev] Re: Alert Customizado
opa ...
fiz aqui um teste, colocando um canvas dentro da application .. certo ? Quando
a application é carregada, ela chama o canvas ... e ele trata do PopUp ... aqui
funcionou tranquilo ... o this, se não me engano, corresponde a própria classe
... ;-)
[]s
2009/12/7 Fabio Ebner <[email protected]>
Entao pelo q eu entendi o q acontece, para dar certo esse meu THIS teria q
ser a minha mx:Application porem eu estou chamando ele de dentro de um canvas,
logo qdo vou o this ele fala q nao consegue converter o canvas para
Application, tentei usar this.parent dentro do canvas, porem ele me retorna
null, sabe como eu posso pegar o parent do meu canvas dentro dele??
valeu
2009/12/7 Marcel Pigozzi <[email protected]>
Testei aqui e funcionou ...Deve ter alguma coisa errada no seu application
no entanto, fiz de outra forma ... veja como ficou:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:Script>
<![CDATA[
import mx.managers.PopUpManager;
private var _win:SelecionarEnderecos;
private function onClick():void {
_win = new SelecionarEnderecos();
PopUpManager.addPopUp(_win, this, true);
}
]]>
</mx:Script>
<mx:Button id="btn" click="onClick()" />
</mx:Application>
t+
2009/12/7 Fabio Ebner <[email protected]>
Marcel , esta quase la, eu executo a seguinte linha:
var
pop1:SelecionarEnderecos=SelecionarEnderecos(PopUpManager.createPopUp(this,
SelecionarEnderecos, true));
estou recebendo o seguinte erro:
TypeError: Error #1034: Falha de coerção de tipo: não é possível
converter glo...@4016d91 em flash.display.DisplayObject.
esse glo...@4016d91 e o meu this. da funcao createPopUp;
segue a minha SelecionarEnderecos:
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
width="602"
height="252"
title="Selecionar Endereço"
showCloseButton="false"
visible="true">
<mx:Script>
<![CDATA[
import mx.managers.PopUpManager;
[Bindable]
public var enderecoList:Array;
private function selectEndereco(evt:Event):void
{
removeMe();
}
private function removeMe():void
{
PopUpManager.removePopUp(this);
}
]]>
</mx:Script>
<mx:DataGrid x="10"
y="10"
width="562"
height="162"
id="listaEndereco"
editable="false"
enabled="true"
dataProvider="{enderecoList}">
<mx:columns>
<mx:DataGridColumn headerText="Column 1"
dataField="col1"/>
<mx:DataGridColumn headerText="Column 2"
dataField="col2"/>
<mx:DataGridColumn headerText="Column 3"
dataField="col3"/>
</mx:columns>
</mx:DataGrid>
<mx:Button x="10"
y="180"
label="Selecionar"
width="243"
id="botaoSelecionar"
click="selectEndereco(event)"/>
<mx:Button x="329"
y="180"
label="Cancelar"
width="243"
id="botaoCancelar"
click="removeMe()"/>
</mx:TitleWindow>
2009/12/7 Marcel Pigozzi <[email protected]>
vc pode utilizar o titleWindow ;-)
segue:
http://livedocs.adobe.com/flex/3/html/help.html?content=layouts_12.html
abraços
2009/12/7 Fabio Ebner <[email protected]>
Pessoal e possivel eu abrir um alert customizado?? quero um alert com
uma dataGrid, e dois botoes Cancelar e Selecionar, que o usuario possa escolher
uma linha do dataGrid e retorne para a minha aplicacao a linha selecionada
valeu
--
Marcel Pigozzi
"Procure ser uma pessoa de valor, em vez de procurar ser uma pessoa de
sucesso. O sucesso é conseqüência"
--
Marcel Pigozzi
"Procure ser uma pessoa de valor, em vez de procurar ser uma pessoa de
sucesso. O sucesso é conseqüência"
--
Marcel Pigozzi
"Procure ser uma pessoa de valor, em vez de procurar ser uma pessoa de sucesso.
O sucesso é conseqüência"
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---
smime.p7s
Description: S/MIME cryptographic signature
