Tweeter button
Facebook button

Por uma internet LIVRE! STOP SOPA & PIPA!

ActionScript3 – Introspecção de Objeto

Olá Pessoal, tudo bem?
Hoje vou abordar de forma simples e direta o que é Introspecção de Objeto, utilizando ActionScript3!
Trataremos deste assunto com mais profundidade em um outro post.

Antes de mais nada o que é introspecção de objeto?
É uma técnica para visualizar/analisar todos os métodos e propriedades de uma classe.

E como isto é realizado?
Utilizando AS3 temos 2 maneiras:

  • Utilizando o laço for…in;
  • Utilizando a API de Introspecção.

Abaixo vamos visualizar a utilização com o laço for:

private var objeto:Object = new Object();
 
private function initObject():void {
    // Aqui criamos o objeto, utilizarei cidades como exemplo.
    objeto.a = "São Paulo";
    objeto.b = "Rio de Janeiro";
    objeto.c = "Belo Horizonte";
}
 
public function extractObject():void {
    for (var p:String in objeto) {
        // Digamos que meuText é o TextArea em que irei exibir os dados.
        meuText.text += p + ":" + objeto[p] + "\n";
     }
}

O resultado será o output abaixo:
c:Belo Horizonte
b:Rio de Janeiro
a:São Paulo

A outra forma, será utilizando o método getClassInfo, presente no objeto ObjectUtil.

import mx.utils.ObjectUtil;
 
public function init() : void{
    // Neste caso declaramos a variável obj sendo do tipo objeto, e recebendo o método getClassInfo com o parametro Mouse, que neste caso é o objeto Mouse
    var obj : Object = ObjectUtil.getClassInfo(Mouse);
    // Enviamos ao TextArea o obj como string, utilizando o método toString()
    myText.text = ObjectUtil.toString(obj);
}
 
// Realizamos o mesmo procedimento acima, entretanto fornecendo para introspecção a propriedade cursor, presente no objeto Mouse.
public function init2() : void{
    var obj : Object = ObjectUtil.getClassInfo(Mouse.cursor);
    myText2.text = ObjectUtil.toString(obj);
}

Veja este mesmo exemplo tratado acima em tempo real:

Espero que tenha sido útil, caso queiram complementar informações basta comentar!
Abraços

Adobe Flex – Utilizando a propriedade cursor

Olá pessoal, tudo bem?
Ultimamente estou altamente focado em desenvolvimento de aplicações utilizando o Flex, e tenho gostado muito, pois o aprendizado é a cada instante, e como vocês sabem sempre o Flex foi meu alvo de estudos e investimentos, inclusive mesmo com todos esses últimos acontecimentos envolvendo seu futuro.

E durante o dia-a-dia sempre encontramos situações comuns no desenvolvimento que com certeza muita gente precisará de algo similar, necessidades simples, mas que podem lhe poupar um tempo já sabendo/tendo o conceito, e como sou adepto ao “conhecimento open-source“, rs, irei hoje exibir um simples exemplo onde é alterado o cursor da aplicação.

Para isto, acessamos a propriedade cursor, que se encontra no objeto Mouse, nela obtemos o valor das constantes desejadas, ou seja: que se referem ao tipo de cursor que será utilizado, estas constantes encontram-se no objeto MouseCursor.

É bem simples, veja abaixo:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
               xmlns:s="library://ns.adobe.com/flex/spark"
               xmlns:mx="library://ns.adobe.com/flex/mx"
               width="527" height="176" backgroundAlpha="0.63" pageTitle="Flex - Cursors"
               viewSourceURL="srcview/index.html">
 
 
    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>
 
<s:layout>
    <s:VerticalLayout paddingBottom="10" paddingTop="10" paddingLeft="10" paddingRight="10" />
</s:layout>    
 
    <s:BorderContainer width="100%" height="100%" cornerRadius="20">
        <s:layout>
            <s:VerticalLayout paddingBottom="10" paddingTop="10" paddingLeft="10" paddingRight="10" gap="10" />
        </s:layout>
 
        <s:HGroup width="100%" horizontalAlign="center" verticalAlign="middle">
            <s:Button label="Arrow" click="Mouse.cursor = MouseCursor.ARROW"/>
            <s:Button label="Auto" click="Mouse.cursor = MouseCursor.AUTO"/>
            <s:Button label="Button" click="Mouse.cursor = MouseCursor.BUTTON"/>
            <s:Button label="Hand" click="Mouse.cursor = MouseCursor.HAND"/>
            <s:Button label="Ibeam" click="Mouse.cursor = MouseCursor.IBEAM"/>
        </s:HGroup>
 
        <mx:HRule width="100%"/>
        <s:VGroup width="100%" height="100%" verticalAlign="middle" horizontalAlign="center" paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10">
            <s:Label text="Área para testes:"/>
            <s:Spacer height="100%"/>
            <mx:TextInput text="Passe o mouse aqui!"/>
            <mx:Button label="E também passe o mouse aqui" buttonMode="true" />
        </s:VGroup>
 
    </s:BorderContainer>
 
</s:Application>

Veja o exemplo:

Espero que isto lhe seja útil, e em caso de dúvidas basta comentar!
Abraços.

Aprenda a desenvolver em Flex!

Olá Pessoal, vim trazer para vocês uma super dica ultra valiosa, mais uma ferramenta de aprendizado aos interessados que querem programar em Adobe Flex.

Se você está afim de aprender, tirar dúvidas, ou estar sempre antenado as boas práticas de desenvolvimento, não deixe de acessar:

http://qa.flex.etc.br/

Espero que gostem da dica e mãos na massa!
Até a próxima.
Abraços.

Apostila – Construindo Aplicativos em Adobe Air

Olá Pessoal, tudo bem?

Hoje encontrei uma apostila sobre desenvolvimento sobre aplicativos AIR e quero compartilhar com vocês.
Um ótimo material de estudo, e direto da fonte mãe Adobe, rs.
Está bem completa e inclui informações à respeito de aplicações mobile: Android e iOS.

A última atualização foi em 27/03/2011.

Vejam abaixo os tópicos abordados:

Faça o download aqui.

Bons estudos pessoal!
Forte abraço.

Go back to top