domingo, 5 de outubro de 2008

Iniciação em Flex

Bem a um tempo deu uma olhada na linguagem Flex e chamou a atenção por sua beleza e por ser para web. Pretendo aqui mostrar como montar um ambiente de desenvolvimento em windows. A linguagem trabalha sobre java, ou seja, onde tem máquina virtual java você vai poder compilar em flex. A idéia de flex se parece muito com java, você compila e é gerado um arquivo SWF onde o browser vai interpretar o arquivo. Ou seja, é uma linguagem compilada e interpretada.

Inicialmente vamos baixar o SDK(
Software Development Kit), onde contém as ferramentas para o desenvolvimento. Lembrando que todo o kit de desenvolvimento é openSource. http://www.adobe.com/products/flex/flexdownloads/index.html

Depois de baixar o Flex SDK, descompacte onde desejar. É necessário que o JRE esteja instalado na máquina para que funcione. Para baixar a máquina virtual
http://www.java.com/en/download/manual.jsp

Agora onde é descompactado o arquivo Flex SDK contém uma pasta com o nome de bin onde localiza todo os binários, incluse o compilador.

Para não ter que passar todo o caminho do compilador na hora da compilação é necessário adicionar essa pasta no na variável PATH do sistema operacional.

Exemplo sem ser adicionado no PATH

C:Documents and SettingsAlucard>c:/flex sdk/bin/mxmlc arquivo.mxml


Exemplo com o PATH

C:Documents and SettingsAlucard>mxmlc arquivo.mxml

Para adicionar a pasta na variável PATH acesse:

Iniciar > Painel de Controle > Sistema

Depois a aba Avançado depois clique no botão Variáveis de Ambiente

Na variável PATH no final adicione um ; (Ponto e Vírgula) no final do texto e adicione o caminho da pasta bin do flex, por exemplo.

c:/flex sdk/bin/

Depois disso abra o Console e digite mxmlc e veja se aparece alguma coisa do tipo:

Version 3.1.0 build 2710
Copyright (c) 2004-2007 Adobe Systems, Inc. All rights reserved.
mxmlc [options] [defaultVar]
Use 'mxmlc -help' for more information.

Quando adicionado algum acento como 'Olá' é gerado um erro então aconselho que não utilize acentos.
Vamos a um teste.
<?xml version="1.0"?>
<!-- containerslayoutsCanvasRepos.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Canvas width = "300" height = "185">
<mx:Label id = "lbl" text = "Informe um nome" x = "0" y = "0"/>
<mx:TextInput id = "text1" text = "" width = "296" x= "2" y = "20"/>

<mx:Button id = "button1" label = "Limpar" x = "10" y = "150"
click="text1.text = '';"
/>

<mx:Button label = "Exibir" x = "111" y = "150"
click = "Alert.show('Ola bem vindo(a) ' + text1.text);"
/>
</mx:Canvas>
</mx:Application>
Bem podemos também criar uma função para fazer o que desejamos.
<?xml version="1.0"?>
<!-- containerslayoutsCanvasRepos.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script><![CDATA[
import mx.controls.Alert;

private function dizerOla():void {
Alert.show(
"Ola seja bem vindo(a) " + text1.text)
}
]]>
</mx:Script>

<mx:Canvas width = "300" height = "185">
<mx:Label id = "lbl" text = "Informe um nome" x = "0" y = "0"/>
<mx:TextInput id = "text1" text = "" width = "296" x= "2" y = "20"/>

<mx:Button id = "button1" label = "Limpar" x = "10" y = "150"
click="text1.text = '';"
/>

<mx:Button label = "Exibir" x = "111" y = "150"
click = "dizerOla()"
/>
</mx:Canvas>
</mx:Application>
Para saber melhor o que o código faz consulte a documentação, que é muito boa.

Compile o código com mxmlc arquivo.mxml, será gerado no mesmo diretório e com o mesmo nome um arquivo SWF esse arquivo deve ser adicionado em uma pagina de internet para ser visualizado. Um código de exemplo abaixo, altere o parâmetro src para o nome do arquivo gerado SWF.

<title>Exemplo 1
<body>

<embed src="teste1.swf" quality="high" type="application/x-shockwave-flash" >

</body>

Bem para agilizar um pouco mais o desenvolvimento configurei um editor de texto para fazer todo o papel de compilação e mostrar o que foi feito. Para isso utilizei o editor de texto RJ TextED que pode ser baixando em:
http://baixaki.ig.com.br/download/RJ-TextEd.htm

Primeiramente crie um arquivo em lotes com o seguinte código.

mxmlc teste.mxml
teste.html

Bem agora vamos dizer para o RJ que quando apertamos F5 deve chamar o arquivo de lote que irá compilar e depois exibir.

Para isso acesse:

Tools > Configure Tools... Depois acesse clique no botão Add

Adicione as seguinte configurações:

Menu text: como Compilar ou qualquer outro nome
Type: Executable(.exe|.com)
Command: coloque o caminho do arquivo .bat
Initial Dir: [CurrentFileDir]

Marque as opções:
Run as DOS Command and capture output
Reload current document

Bem agora temos que adicionar o atalho no teclado para chamar essas configurações, acesse.

Tools > Configure Tools...

Irá mostrar um item com o nome que você escolheu selecione-o.
Logo abaixo tem uma caixa de texto com o nome

Press new shortcut key
Prescione F5 e clique no botão Assign.

Por padrão o RJ TextED já vem com uma ação na tecla F5 devemos tira-lá. Para isso acesse:

Envionment > Customize Keyboard
Procure pelo item Edit > TimeDataAction e depois clique no botão Remove.

Pronto as configurações do RJ TextED estão prontas, divirta-se.

3 comentários:

тყłεя vσятεx disse...

Opa, valeu mesmo.
Não preciso agora, mas daqui pouco tempo vou necessitar disto.

Obrigado.

Alexandre Romeu disse...

Com relação ao problema com caractéres acentuados. Procurando uma solução, a única coisa que até o momento consegui fazer para utilizar acentos é trocar a letra pelo "Entity Number" da lista "HTML ISO-8859-1 Reference", que está no site:

http://www.w3schools.com/tags/ref_entities.asp

Danilo (Alucard) disse...

Com relação ao problema com caractéres acentuados. Procurando uma solução, a única coisa que até o momento consegui fazer para utilizar acentos é trocar a letra pelo "Entity Number" da lista "HTML ISO-8859-1 Reference", que está no site:

http://www.w3schools.com/tags/ref_entities.asp

Muito obrigado... :D