SlideShare una empresa de Scribd logo
1 de 870
Descargar para leer sin conexión
Aprendendo ActionScript 2.0 no Flash
Marcas comerciais
1 Step RoboPDF, ActiveEdit, ActiveTest, Authorware, Blue Sky Software, Blue Sky, Breeze, Breezo, Captivate, Central,
ColdFusion, Contribute, Database Explorer, Director, Dreamweaver, Fireworks, Flash, FlashCast, FlashHelp, Flash Lite,
FlashPaper, Flash Video Encoder, Flex, Flex Builder, Fontographer, FreeHand, Generator, HomeSite, JRun, MacRecorder,
Macromedia, MXML, RoboEngine, RoboHelp, RoboInfo, RoboPDF, Roundtrip, Roundtrip HTML, Shockwave, SoundEdit,
Studio MX, UltraDev e WebHelp são marcas comerciais registradas ou marcas comerciais da Macromedia, Inc. e podem estar
registradas nos Estados Unidos ou em outras jurisdições, inclusive internacionais. Outros nomes de produtos, logotipos, designs,
títulos, palavras ou frases mencionados nesta publicação podem ser marcas comerciais, marcas de serviço ou nomes comerciais da
Macromedia, Inc. ou de outras entidades e podem estar registrados em certas jurisdições, inclusive internacionais.

Informações de terceiros
Este guia contém links para sites da Web de terceiros que não estão sob o controle da Macromedia. Nesses casos, a Macromedia
não é responsável pelo conteúdo de nenhum site vinculado. Se acessar um dos sites da Web de terceiros mencionados neste guia,
você estará assumindo os riscos inerentes. A Macromedia oferece esses links apenas como uma conveniência, e a inclusão de um
link não significa que a Macromedia apóia ou aceita qualquer responsabilidade pelo conteúdo apresentado nos sites de terceiros.

Tecnologia de compactação e descompactação de voz licenciada da Nellymoser, Inc. (www.nellymoser.com).

                          Tecnologia Sorenson™ Spark™ de compactação e descompactação de vídeo licenciada da Sorenson
                          Media, Inc.

                          Navegador Opera ® Copyright © 1995-2002 Opera Software ASA e seus fornecedores. Todos os
direitos reservados.

O vídeo Macromedia Flash 8 possui tecnologia de vídeo On2 TrueMotion. © 1992-2005 On2 Technologies, Inc. Todos os
direitos reservados. http://www.on2.com.

Visual SourceSafe é uma marca comercial ou comercial registrada da Microsoft Corporation nos Estados Unidos e/ou em outros
países.

Copyright © 2005 Macromedia, Inc. Todos os direitos reservados. Este manual não pode ser copiado, fotocopiado,
reproduzido, traduzido ou convertido em nenhum formato eletrônico ou que possa ser lido por máquina, por inteiro ou
em parte, sem o consentimento prévio por escrito da Macromedia, Inc. Não obstante o precedente, o proprietário ou
usuário autorizado de uma cópia válida do software com que este manual foi fornecido pode imprimir uma cópia deste
manual a partir de uma versão eletrônica com a finalidade única de ele próprio ou um usuário autorizado aprender a usar
este software, desde que nenhuma parte deste manual seja impressa, reproduzida, distribuída, revendida ou transmitida
para qualquer outro fim, incluindo, sem limitação, fins comerciais, como vendas de cópias desta documentação ou
fornecimento de serviços de suporte pré-pagos.

Agradecimentos
Gerenciamento de projetos: Sheila McGinn
Criação do texto: Jen deHaan; Peter deHaan, Joey Lott
Editora geral: Rosana Francescato
Editora chefe: Lisa Stanziano
Edição: Linda Adler, Geta Carlson, Evelyn Eldridge, John Hammett, Mary Kraemer, Noreen Maher, Jessie Wood, Anne Szabla
Gerenciamento de produção: Patrice O’Neill, Kristin Conradi, Yuko Yagi
Projeto de mídia e produção: Adam Barnett, Aaron Begley, Paul Benkman. John Francis, Geeta Karmarkar, Masayo Noda,
Paul Rangel, Arena Reed, Mario Reynoso
Agradecimentos especiais a Jody Bleyle, Mary Burger, Lisa Friendly, Stephanie Gowin, Bonnie Loo, Mary Ann Walsh, Erick Vera,
aos testadores beta e a toda a equipe de engenharia e controle de qualidade do Flash e do Flash Player.
Primeira edição: Setembro de 2005
Macromedia, Inc.
601 Townsend St.
San Francisco, CA 94103
Conteúdo


Introdução. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Público-alvo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Requisitos de sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Atualizando arquivos XML para Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Sobre a documentação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Recursos adicionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Capítulo 1: Novidades do ActionScript no Flash 8 . . . . . . . . . . . . 19
Novidades do ActionScript 2.0 e do Flash 8 . . . . . . . . . . . . . . . . . . . . . . 19
Alterações no modelo de segurança para arquivos SWF instalados
localmente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Capítulo 2: Escrevendo e editando o ActionScript 2.0 . . . . . . . . 31
Sobre o ActionScript e eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Organizando o código ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Usando o painel Actions e a janela Script. . . . . . . . . . . . . . . . . . . . . . . . 36
Sobre o painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
Sobre a janela Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Sobre a codificação no painel Actions e na janela Script . . . . . . . . . . 39
Sobre recursos do painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Sobre comportamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Sobre as configurações de publicação do ActionScript . . . . . . . . . . . 66

Capítulo 3: Sobre o ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . 71
O que é ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72
Sobre a opção entre o ActionScript 1.0 e o ActionScript 2.0 . . . . . . .73
Noções básicas do ActionScript e do Flash Player . . . . . . . . . . . . . . . .74




                                                                                                                   3
Capítulo 4: Dados e tipos de dados . . . . . . . . . . . . . . . . . . . . . . . . 75
Sobre dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Sobre tipos de dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Sobre variáveis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Organizando dados em objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
Sobre a conversão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .116

Capítulo 5: Fundamentos da sintaxe e da linguagem . . . . . . . . 119
Sobre sintaxe, instruções e expressões . . . . . . . . . . . . . . . . . . . . . . . . . 120
Sobre sintaxe de ponto e caminhos de destino . . . . . . . . . . . . . . . . . . 124
Sobre pontuadores de linguagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Sobre constantes e palavras-chave . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Sobre instruções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Sobre arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
Sobre operadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

Capítulo 6: Funções e métodos . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Sobre funções e métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Noções básicas sobre métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235

Capítulo 7: Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
Sobre a programação orientada a objeto e o Flash . . . . . . . . . . . . . 240
Criando arquivos de classes personalizados. . . . . . . . . . . . . . . . . . . . 249
Sobre como trabalhar com classes personalizadas em um
aplicativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
Exemplo: Criando classes personalizadas. . . . . . . . . . . . . . . . . . . . . . . 278
Exemplo: Usando arquivos de classes personalizados no Flash . . . 291
Atribuindo uma classe a símbolos no Flash. . . . . . . . . . . . . . . . . . . . . 295
Compilando e exportando classes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .296
Noções básicas sobre classes e escopo . . . . . . . . . . . . . . . . . . . . . . . 299
Sobre classes de nível superior e internas . . . . . . . . . . . . . . . . . . . . . . 302
Sobre como trabalhar com classes internas . . . . . . . . . . . . . . . . . . . . . 312

Capítulo 8: Herança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Sobre herança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Sobre a criação de subclasses no Flash . . . . . . . . . . . . . . . . . . . . . . . . 321
Usando o polimorfismo em um aplicativo . . . . . . . . . . . . . . . . . . . . . . . 327




4     Conteúdo
Capítulo 9: Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Sobre interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331
Criando interfaces como tipos de dados. . . . . . . . . . . . . . . . . . . . . . . . 337
Noções básicas sobre herança e interfaces . . . . . . . . . . . . . . . . . . . . . 339
Exemplo: Usando interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
Exemplo: Criando uma interface complexa . . . . . . . . . . . . . . . . . . . . . 342

Capítulo 10: Manipulando eventos . . . . . . . . . . . . . . . . . . . . . . . 347
Usando métodos manipuladores de eventos . . . . . . . . . . . . . . . . . . . . 348
Usando ouvintes de eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .351
Usando ouvintes de eventos com componentes . . . . . . . . . . . . . . . . 353
Usando manipuladores de eventos de botão e de clipe de filme. . . 355
Transmitindo eventos de instâncias de componentes . . . . . . . . . . . . 360
Criando clipes de filme com estados de botão . . . . . . . . . . . . . . . . . . .361
Escopo do manipulador de eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
Escopo da palavra-chave this . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
Usando a classe Delegate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366

Capítulo 11: Trabalhando com clipes de filme . . . . . . . . . . . . . . 369
Sobre o controle de clipes de filme com o ActionScript . . . . . . . . . . 370
Chamando vários métodos em um único clipe de filme. . . . . . . . . . . 372
Carregando e descarregando arquivos SWF . . . . . . . . . . . . . . . . . . . 373
Alterando a posição e a aparência de um clipe de filme . . . . . . . . . . 376
Arrastando clipes de filme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Criando clipes de filme durante a execução . . . . . . . . . . . . . . . . . . . . . 378
Adicionando parâmetros aos clipes de filme criados
dinamicamente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Gerenciando profundidades do clipe de filme . . . . . . . . . . . . . . . . . . . 385
Sobre o armazenamento em cache e a rolagem de clipes
de filme com o ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Usando clipes de filme como máscaras . . . . . . . . . . . . . . . . . . . . . . . . 397
Manipulando eventos de clipes de filme . . . . . . . . . . . . . . . . . . . . . . . . 399
Atribuindo uma classe a um símbolo de clipe de filme . . . . . . . . . . . . 399
Inicializando as propriedades de classe . . . . . . . . . . . . . . . . . . . . . . . . .401

Capítulo 12: Trabalhando com texto e seqüências
de caracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Sobre campos de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
Sobre o carregamento de texto e variáveis em campos de texto . . .415
Usando fontes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Sobre a renderização de fontes e texto sem serrilhado. . . . . . . . . . . 430




                                                                                            Conteúdo         5
Sobre o layout e a formatação de texto . . . . . . . . . . . . . . . . . . . . . . . . 439
Formatando texto com estilos CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . .447
Usando texto em formato HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
Exemplo: Criando texto de rolagem . . . . . . . . . . . . . . . . . . . . . . . . . . . .475
Sobre seqüências de caracteres e a classe String. . . . . . . . . . . . . . . . 477

Capítulo 13: Animação, filtros e desenhos . . . . . . . . . . . . . . . . . 497
Scripts de animação com o ActionScript 2.0 . . . . . . . . . . . . . . . . . . 498
Sobre cache de bitmap, rolagem e desempenho . . . . . . . . . . . . . . . 508
Sobre as classes Tween e TransitionManager . . . . . . . . . . . . . . . . . 509
Usando efeitos de filtro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .526
Trabalhando com filtros usando ActionScript . . . . . . . . . . . . . . . . . . .534
Manipulando efeitos de filtro com código . . . . . . . . . . . . . . . . . . . . . . .557
Criando bitmaps com a classe BitmapData . . . . . . . . . . . . . . . . . . . . . 561
Modos de mistura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .564
Sobre a ordem de operação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567
Desenhando com o ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567
Noções básicas sobre dimensionamento e guias de trecho . . . . . . .583

Capítulo 14: Criando interação com o ActionScript . . . . . . . . . 589
Sobre eventos e interação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
Controlando a reprodução de arquivos SWF . . . . . . . . . . . . . . . . . . . 590
Criando interatividade e efeitos visuais. . . . . . . . . . . . . . . . . . . . . . . . . 593
Criando vinculações de dados durante a execução com
o ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .607
Desconstruindo um script de exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . 616

Capítulo 15: Trabalhando com imagens, som e vídeo . . . . . . . . 619
Sobre o carregamento e o trabalho com mídia externa . . . . . . . . . . 620
Carregando arquivos SWF e de imagem externos . . . . . . . . . . . . . . . 621
Sobre o carregamento e o uso de arquivos MP3 externos . . . . . . . .626
Atribuindo vinculação a recursos da biblioteca. . . . . . . . . . . . . . . . . . . 631
Sobre o uso de vídeo FLV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .632
Sobre a criação de animações do progresso para arquivos
de mídia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .654




6     Conteúdo
Capítulo 16: Trabalhando com dados externos . . . . . . . . . . . . . 663
Enviando e carregando variáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
Usando HTTP para conectar a scripts do servidor . . . . . . . . . . . . . . . 668
Sobre upload e download de arquivos . . . . . . . . . . . . . . . . . . . . . . . . . 674
Sobre XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
Enviando mensagens para o Flash Player e a partir deste . . . . . . . . 692
Sobre a API External . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696

Capítulo 17: Noções básicas de segurança . . . . . . . . . . . . . . . . 707
Sobre compatibilidade com os modelos de segurança
anteriores do Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708
Sobre segurança do arquivo local e o Flash Player . . . . . . . . . . . . . . 709
Sobre domínios, segurança entre domínios e arquivos SWF . . . . . 727
Arquivos de diretivas de servidor para autorizar o acesso a dados. 736
Acesso de protocolo HTTP para HTTPS entre arquivos SWF . . . . . 741

Capítulo 18: Depurando aplicativos . . . . . . . . . . . . . . . . . . . . . . 745
Depurando scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745
Usando o painel Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759

Capítulo 19: Melhores práticas e convenções de codificação
para ActionScript 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .767
Convenções de atribuição de nome . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 769
Usando de comentários no código. . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 779
Convenções de codificação do ActionScript . . . . . . . . . . . . . . . . . . . .                        782
Otimização do ActionScript e do Flash Player . . . . . . . . . . . . . . . . . .                         798
Formatando a sintaxe do ActionScript . . . . . . . . . . . . . . . . . . . . . . . . .                   799

Apêndice A: Mensagens de erro . . . . . . . . . . . . . . . . . . . . . . . . . 809

Apêndice B: Operadores Flash 4 obsoletos . . . . . . . . . . . . . . . . 815

Apêndice C: Teclas do teclado e valores de códigos
de teclas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817

Apêndice D: Criando scripts para versões anteriores do Flash
Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825
Sobre a especificação de versões anteriores do Flash Player . . . . 825
Usando o Flash 8 para criar conteúdo para o Flash Player 4 . . . . . 826




                                                                                             Conteúdo         7
Apêndice E: Programação orientada a objeto com
o ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829
Sobre o ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830
Criando um objeto personalizado no ActionScript 1.0 . . . . . . . . . . . . 831
Atribuindo métodos a um objeto personalizado no
ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .832
Definindo métodos manipuladores de eventos no
ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .834
Criando herança no ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . .836
Adicionando propriedades getter/setter a objetos no
ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837
Usando as propriedades do objeto Function no ActionScript 1.0 . .838

Apêndice F: Terminologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841

Índice. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851




8     Conteúdo
Introdução

O Macromedia Flash Basic 8 e o Macromedia Flash Professional 8 são as ferramentas de
criação padrão profissionais para a produção de experiências de grande impacto na Web. O
ActionScript é a linguagem utilizada para adicionar interatividade aos aplicativos Flash, sejam
os aplicativos arquivos SWF animados simples ou aplicativos de Internet avançados mais
complexos. Para usar o Flash, não é necessário o ActionScript, mas, se você desejar fornecer
interatividade básica ou complexa com o usuário, trabalhar com objetos diferentes daqueles
contidos no Flash (como botões e clipes de filme) ou então transformar um arquivo SWF em
uma experiência de usuário mais eficiente, deverá usar o ActionScript.
Para obter mais informações, consulte os tópicos a seguir:
Público-alvo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Atualizando arquivos XML para Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Requisitos de sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Sobre a documentação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Recursos adicionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14


Público-alvo
Este manual pressupõe que você já tenha instalado o Flash Basic 8 ou o Flash Professional 8 e
saiba como usar a interface de usuário.É preciso que saiba posicionar objetos no Stage e
manipulá-los no ambiente de criação do Flash. Se já tiver usado uma linguagem de criação, o
ActionScript lhe parecerá familiar. No entanto, se for iniciante em programação, saiba que os
fundamentos do ActionScript são fáceis de aprender. Você pode começar com comandos
simples e criar mais complexidade com o tempo. Pode adicionar muita interatividade aos seus
arquivos sem precisar aprender (ou escrever) muito código.


Requisitos de sistema
O ActionScript 2.0 não tem qualquer requisito de sistema além do Flash 8 .



                                                                                                                                         9
Este manual pressupõe que você esteja utilizando as configurações de publicação padrão para
os arquivos do Flash: Flash Player 8 e ActionScript 2.0. Se você alterar qualquer uma dessas
configurações, as explicações e exemplos de código apresentados na documentação poderão
não funcionar corretamente. Caso desenvolva aplicativos para versões anteriores do Flash
Player, consulte o Apêndice D, “Criando scripts para versões anteriores do Flash Player”, na
página 825.


Atualizando arquivos XML para Flash
É importante que estejam sempre instalados os arquivos XML para Flash mais recentes. A
Macromedia algumas vezes apresenta recursos em versões com ponto (versões menores) do
Flash Player. Quando uma versão dessas se encontrar disponível, atualize sua versão do Flash
para obter os arquivos XML mais recentes. Caso contrário, o compilador do Flash 8 poderá
gerar erros caso você use novas propriedades ou métodos indisponíveis na versão do Flash
Player que veio com a instalação do Flash.
Por exemplo, o Flash Player 7 (7.0.19.0) continha um novo método para o objeto System ,
System.security.loadPolicyFile. Para acessar esse método, use o instalador Player
Updater (Atualizador de player) para atualizar todos os players instalados com o Flash. Caso
contrário, o compilador do Flash exibirá erros.
Lembre-se de que é possível instalar um Player Updater que seja de uma ou mais versões
maiores mais recentes que a sua do Flash. Fazendo isso, obterá os arquivos XML necessários,
mas não deverá receber mensagens de erro do compilador quando publicar versões mais
antigas do Flash Player. Algumas vezes, novos métodos ou propriedades encontram-se
disponíveis para versões mais antigas, e ter os arquivos XML mais recentes minimiza os erros
de compilação quando você tenta acessar métodos ou propriedades mais antigos.


Sobre a documentação
Este manual oferece uma visão geral da sintaxe do ActionScript e informações sobre como usá-
lo quando trabalhar com diferentes tipos de objetos. Para obter detalhes sobre a sintaxe e o uso
de cada elemento da linguagem, consulte o ActionScript 2.0 Language Reference.
Para obter mais informações, consulte os seguintes tópicos:
■    “Visão geral do manual Aprendendo ActionScript 2.0” na página 11
■    “Sobre os arquivos de exemplo” na página 15
■    “Termos usados neste documento” na página 13
■    “Copiar e colar código” na página 13



10     Introdução
Visão geral do manual Aprendendo ActionScript 2.0
A lista a seguir resume o conteúdo deste manual:
■   O Capítulo 1, “Novidades do ActionScript no Flash 8,” descreve recursos que são novos
    no ActionScript, alterações no compilador e no depurador e o novo modelo de
    programação para a linguagem ActionScript 2.0.
■   O Capítulo 2, “Escrevendo e editando o ActionScript 2.0,” descreve recursos do editor do
    ActionScript dentro do Flash que facilitam a escrita de código.
■   O Capítulo 3, “Sobre o ActionScript,” descreve o que é a linguagem ActionScript e
    detalha como escolher qual versão utilizar.
■   O Capítulo 4, “Dados e tipos de dados,” descreve a terminologia e os conceitos básicos
    sobre dados, tipos de dados e variáveis. Esses conceitos serão usados em todo o manual.
■   O Capítulo 5, “Fundamentos da sintaxe e da linguagem,” descreve a terminologia e os
    conceitos básicos da linguagem ActionScript. Esses conceitos serão usados em todo o
    manual.
■   O Capítulo 6, “Funções e métodos,” descreve como escrever diferentes tipos de funções e
    métodos e como usá-los no seu aplicativo.
■   O Capítulo 7, “Classes,” descreve como criar classes e objetos personalizados no
    ActionScript. Esse capítulo também lista as classes internas do ActionScript e oferece uma
    visão geral de como utilizá-las para acessar recursos avançados do ActionScript.
■   O Capítulo 8, “Herança,” descreve a herança na linguagem ActionScript e como estender
    classes internas ou personalizadas.
■   O Capítulo 9, “Interfaces,” descreve como criar interfaces e trabalhar com elas no
    ActionScript.
■   O Capítulo 10, “Manipulando eventos,” descreve várias formas de manipular eventos:
    métodos manipuladores de eventos, ouvintes de eventos e manipuladores de eventos de
    botão e de clipe de filme.
■   O Capítulo 11, “Trabalhando com clipes de filme,” descreve clipes de filme e o
    AcionScript que você pode usar para crontrolá-los.
■   O Capítulo 12, “Trabalhando com texto e seqüências de caracteres,” descreve os diferentes
    modos como você pode controlar o texto e as seqüências de caracteres no Flash e inclui
    informações sobre formatação de texto e o FlashType (renderização de texto avançada,
    como texto sem serrilhado).
■   O Capítulo 13, “Animação, filtros e desenhos,” descreve como criar animação e imagens
    baseadas em código, adicionar filtros a objetos e desenhar usando o ActionScript.




                                                                   Sobre a documentação       11
■    O Capítulo 14, “Criando interação com o ActionScript,” descreve alguns modos simples
     de criar aplicativos mais interativos, incluindo o controle quando os arquivos SWF são
     executados e a criação de ponteiros personalizados e de controles de som.
■    O Capítulo 15, “Trabalhando com imagens, som e vídeo,” descreve como importar
     arquivos de mídia externos, como imagens de bitmap, arquivos MP3, arquivos Flash
     Video (FLV) e outros arquivos SWF, nos aplicativos Flash. Esse capítulo também oferece
     uma visão geral de como trabalhar com o vídeo nos aplicativos e como criar animações
     para o carregamento da barra de progresso.
■    O Capítulo 16, “Trabalhando com dados externos,” descreve como processar dados de
     fontes externas usando scripts de servidor ou de cliente nos aplicativos. Esse capítulo
     descreve como integrar os dados com os aplicativos.
■    O Capítulo 17, “Noções básicas de segurança,” explica a segurança no Flash Player, na
     medida em que se relaciona com o trabalho com arquivos SWF localmente no disco
     rígido. Esse capítulo também explica questões de segurança entre domínios e como
     carregar dados de servidores ou através de domínios.
■    O Capítulo 18, “Depurando aplicativos,” descreve o depurador do ActionScript dentro do
     Flash, que facilita a escrita de aplicativos.
■    O Capítulo 19, “Melhores práticas e convenções de codificação para ActionScript 2.0,”
     explica as melhores práticas para usar o Flash e para escrever o ActionScript. Esse capítulo
     também lista convenções de codificação padronizadas, como variáveis de atribuição de
     nome e outras convenções.
■    O Apêndice A, “Mensagens de erro,” lista as mensagens de erro que o compilador do Flash
     pode gerar.
■    O Apêndice B, “Operadores Flash 4 obsoletos,” lista todos os operadores obsoletos do
     Flash 4 e sua associatividade.
■    O Apêndice C, “Teclas do teclado e valores de códigos de teclas,” lista todas as teclas de
     um teclado padrão e os valores de códigos de teclas ASCII correspondentes usados para
     identificar as teclas no ActionScript.
■    O Apêndice D, “Criando scripts para versões anteriores do Flash Player,” fornece diretrizes
     para ajudá-lo a criar scripts sintaticamente corretos para a versão do Flash Player desejada.
■    O Apêndice E, “Programação orientada a objeto com o ActionScript 1.0,” fornece
     informações sobre o uso do modelo de objeto ActionScript 1.0 para escrver scripts.
■    O Apêndice F, “Terminologia,” lista a terminologia comumente usada ao trabalhar com a
     linguagem ActionScript e fornece descrições para os termos.
Este manual explica como usar a linguagem ActionScript. Para obter informações sobre os
elementos de linguagem propriamente ditos, consulte o ActionScript 2.0 Language Reference.



12     Introdução
Convenções tipográficas
Este manual usa as seguintes convenções tipográficas:
■   Fonte Code indica   código do ActionScript.
■   Fonte Code negrito, normalmente em um procedimento, indica código que você
    precisa modificar ou adicionar a um código já adicionado ao arquivo FLA. Em alguns
    casos, pode ser usado para realçar o código a ser observado.
■   Texto em negrito indica dados que você precisa digitar na interface de usuário, como
    nome de arquivo ou nome de instância.
■   Texto em itálico indica um novo termo definido no texto que se segue. Em um caminho de
    arquivo, pode indicar um valor que deve ser substituído (por exemplo, por um nome de
    diretório no seu próprio disco rígido).


Termos usados neste documento
Os seguintes termos são usados neste manual:
■   Você refere-se ao desenvolvedor que escreve um script ou aplicativo.
■   O usuário refere-se à pessoa que executará os scripts e aplicativos.
■   Tempo de compilação é o momento em que você publica, exporta, testa ou depura o
    documento.
■   Tempo de execução é o momento em que o script é executado no Flash Player.
Termos do ActionScript como método e objeto são definidos no Apêndice F, “Terminologia”,
na página 841.


Copiar e colar código
Quando você colar o ActionScript do painel Help (Ajuda) para o FLA ou o arquivo do
ActionScript, preste atenção aos caracteres especiais. São caracteres especiais as aspas especiais
(também chamadas de aspas curvas ou aspas inglesas). Esses caracteres não são interpretados
pelo editor do ActionScript, então o código lança um erro quando você tenta compilá-lo no
Flash.




                                                                      Sobre a documentação      13
Você pode identificar se os caracteres de aspas são especiais quando eles não são codificados
por cores de forma correta. Ou seja, se nenhuma seqüência de caracteres mudar de cor no
editor de cores, será preciso substituir os caracteres especiais por caracteres de aspas retas
comuns. Se você digitar um caractere de aspa simples ou dupla diretamente no editor do
ActionScript, sempre digitará um caractere de aspa reta. O compilador (quando você testa ou
publica um arquivo SWF) lança um erro e permite que você saiba que há um tipo errado
(marcas de aspas especiais ou curvas) de caracteres no seu código.
N OT A




          Você também pode encontrar aspas especiais se colar o ActionScript de outros locais,
          como de uma página da Web ou um documento do Microsoft Word.


Cuidado com quebras de linha ao copiar e colar código. Ao colar o seu código de alguns
locais, a linha de código poderá se quebrar em um local inapropriado. Certifique-se de que a
codificação de cores da sua sintaxe esteja correta no editor do ActionScript se achar que as
quebras de linha representam um problema. Compare o código do painel Actions (Ações)
com o do painel Help para ver se correspondem. Procure ativar o Word Wrap (quebra
automática de linha) no editor do ActionScript para ajudar a solucionar quebras de linha
excedentes no código (selecione View (Exibir) > Word Wrap (quebra automática de linha) na
janela Script ou Word Wrap no menu pop-up do painel Actions.)


Recursos adicionais
Além deste manual sobre o ActionScript, existem outros sobre outros tópicos do Flash, como
componentes e o Macromedia Flash Lite. Você pode acessar cada manual no painel Help
(Help > Flash Help (Ajuda do Flash)), exibindo o sumário padrão. Clique no botão Clear
(Limpar) para ver os manuais disponíveis; para obter mais informações, consulte “Onde
encontrar documentação sobre outros assuntos” na página 17.
Para obter mais informações sobre outros recursos disponíveis, consulte os seguintes tópicos:
■        “Sobre os arquivos de exemplo” na página 15
■        “Onde encontrar arquivos PDF ou documentação impressa” na página 15
■        “Sobre o LiveDocs” na página 16
■        “Recursos on-line adicionais” na página 17
■        “Onde encontrar documentação sobre outros assuntos” na página 17




14         Introdução
Sobre os arquivos de exemplo
Há vários arquivos de exemplo baseados no ActionScript que são instalados com o Flash. Esses
arquivos de exemplo mostram como o código funciona em um arquivo FLA; geralmente
servem como uma ferramenta de aprendizado bem útil. Os capítulos deste manual muitas
vezes fazem referência a esses arquivos, mas recomendamos que você consulte também a pasta
de arquivos de exemplo do seu disco rígido.
Os arquivos de exemplo incluem arquivos FLA de aplicativo que usam funções comuns do
Flash instaladas com ele. Esses aplicativos foram projetados para apresentar aos novos
desenvolvedores do Flash as capacidades dos aplicativos Flash assim como para mostrar aos
desenvolvedores avançados como funcionam os recursos do Flash no contexto.
Você pode encontrar os arquivos de origem de exemplo com foco no ActionScript na pasta
Samples (Exemplos) do disco rígido.
■   No Windows, navegue até a unidade de inicializaçãoProgram FilesMacromediaFlash
    8Samples and TutorialsSamplesActionScript.
■   No Macintosh, navegue até Macintosh HD/Applications/Macromedia Flash 8/Samples
    and Tutorials/Samples/ActionScript/.
Você verá como são úteis os seguintes arquivos de exemplo com foco em componentes, pois
eles contêm vários códigos ActionScript. Eles também podem ser encontrados na pasta
Samples do disco rígido:
■   No Windows, navegue até a unidade de inicializaçãoProgram FilesMacromediaFlash
    8Samples and TutorialsSamplesComponents.
■   No Macintosh, navegue até Macintosh HD/Applications/Macromedia Flash 8/Samples
    and Tutorials/Samples/Components/.
Você também pode encontrar arquivos de exemplo adicionais para download na Internet. A
página da Web a seguir contém links e descrições de arquivos de exemplo adicionais:
www.macromedia.com/go/flash_samples/.


Onde encontrar arquivos PDF ou documentação
impressa
Caso prefira ler a documentação em formato impresso, as versões PDF de cada manual
encontram-se disponíveis para download. Vá até www.macromedia.com/support/
documentation/ e selecione o produto em que está interessado. Você pode exibir ou fazer o
download do PDF ou acessar o link da versão LiveDocs do manual.




                                                                    Recursos adicionais     15
Muitas vezes você também pode adquirir a documentação impressa. Para obter informações
atualizadas, vá até o site de suporte da documentação e selecione Flash Basic 8 ou Flash
Professional 8.


Sobre o LiveDocs
Você pode acessar a documentação no site LiveDocs ou pelo painel Help. O site LiveDocs
contém todas as páginas de ajuda do Flash e pode conter comentários que esclareçam,
atualizem ou corrijam partes da documentação. Clique em View Comments (Exibir
comentários) em LiveDocs na parte inferior de uma página do painel Help para exibir a
página equivalente no site LiveDocs. Vá até http://livedocs.macromedia.com para ver uma
lista de toda a documentação disponível no formato LiveDocs.
Escritores técnicos monitoram o site LiveDocs. Uma das vantagens do LiveDocs é ver
comentários que esclarecem a documentação ou corrigir erros ou problemas que surgem após
o lançamento de um software. Não é no LiveDocs que você faz solicitações de ajuda, como
perguntas sobre seu código que não funciona, comentários sobre problemas com software ou
instalação ou perguntas sobre como criar algo com o Flash. Nele você fornece informações
sobre a documentação (por exemplo, você aponta uma frase ou parágrafo que requer
esclarecimento).
Quando você clica no botão para adicionar um comentário sobre o LiveDocs, há diversos
pontos sobre os tipos de comentários que são aceitáveis no sistema. Leia essas diretrizes
atentamente para que seu comentário não seja removido do site.
Se tiver alguma dúvida sobr eo Flash, faça sua pergunta nos fóruns da Web da Macromedia:
www.macromedia.com/support/forums/. Os fóruns da Web são o melhor local para fazer
perguntas, pois há vários funcionários da Macromedia lá, voluntários da equipe Macromedia,
gerentes e membros de grupos de usuário da Macromedia e até escritores técnicos que
monitoram esses fóruns.
Engenheiros não monitoram o sistema LiveDocs, mas a lista de tarefas do Flash. Se achar que
encontrou um erro (bug) no software ou se quiser solicitar um aprimoramento para o Flash,
preencha o formulário em www.macromedia.com/go/wish. Se você relatar o bug ou a
solicitação de aprimoramento no LiveDocs, eles não serão adicionados de forma oficial ao
banco de dados de bugs. Use o formulário apropriado se quiser que um engenheiro dê atenção
ao bug reportado ou à sua solicitação.
Lembre-se de dar atenção aos caracteres especiais e às quebras de linha quando colar da Web,
incluindo do LiveDocs. A Macromedia vem se esforçando para remover todos os caracteres
especiais dos exemplos de código, mas, se você tiver dificuldades para colar o código, consulte
“Copiar e colar código” na página 13.



16    Introdução
Recursos on-line adicionais
Existem vários recursos on-line que oferecem várias instruções, ajuda e orientação para
facilitar o uso do Macromedia Flash 8. Consulte com freqüência os seguintes sites para obter
atualizações:
O site The Macromedia Developer Center (www.macromedia.com/devnet) é atualizado
regularmente com as informações mais recentes sobre o Flash, além de oferecer
aconselhamentos de usuários experientes, tópicos avançados, exemplos, dicas, tutoriais
(incluindo tutoriais com várias partes) e outras atualizações. Visite com freqüência o site da
Web para saber das últimas novidades sobre o Flash e como obter o máximo do programa.
O site The Macromedia Flash Support Center (www.macromedia.com/support/flash)
fornece TechNotes (Notas Técnicas), atualizações de documentação e links para recursos
adicionais na comunidade Flash.
O site The Macromedia Weblogs (http://weblogs.macromedia.com) fornece uma lista dos
weblogs (também chamados de blogs) de funcionários e da comunidade Macromedia .
Os fóruns da Web da Macromedia (http://webforums.macromedia.com) oferecem vários
fóruns para perguntas específicas sobre o Flash, seus aplicativos ou a linguagem ActionScript.
Os fóruns são monitorados por voluntários da equipe Macromedia e muitas vezes são visitados
por funcionários de lá também. Se não souber a quem recorrer ou como resolver um
problema, comece por um fórum do Flash.
O site The Macromedia Community (www.macromedia.com/community) hospeda
regularmente Macrochats, uma série de apresentações ao vivo sobre uma variedade de tópicos
feitas por funcionários ou membros da comunidade Macromedia. Consulte regulamente o site
à procura de atualizações e para registrar-se nos Macrochats.


Onde encontrar documentação sobre outros
assuntos
Os manuais a seguir oferecem informações adicionais sobre assuntos comumente associados
ao ActionScript 2.0:
■   Para obter informações sobre os elementos que compõem a linguagem ActionScript,
    consulte o ActionScript 2.0 Language Reference.
■   Para obter informações sobre como trabalhar no ambiente de criação do Flash, consulte o
    How to Use Help (Como usar a Ajuda).
■   Para obter informações sobre como trabalhar com componentes, consulte o Using
    Components (Usando componentes).




                                                                       Recursos adicionais       17
18   Introdução
CAPÍTULO 1


Novidades do ActionScript
no Flash 8
                                                                                                                  1
O Macromedia Flash Basic 8 e o Macromedia Flash Professional 8 oferecem vários
aprimoramentos que facilitam a criação de scripts mais eficientes com uso da linguagem
ActionScript. Os novos recursos, analisados neste capítulo, incluem novos elementos de
linguagem (consulte “Acréscimos à linguagem ActionScript” na página 22), ferramentas de
edição aprimoradas (consulte “Alterações de edição do ActionScript” na página 28), alterações
no modelo de segurança e outros aprimoramentos do ActionScript relacionados à ferramenta
de criação.
Para obter mais informações, consulte os seguintes tópicos:
Novidades do ActionScript 2.0 e do Flash 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Alterações no modelo de segurança para arquivos SWF instalados localmente . 29


Novidades do ActionScript 2.0 e do
Flash 8
A linguagem ActionScript cresceu e desenvolveu-se desde sua introdução, há vários anos. Com
cada nova versão do Flash, mais palavras-chave, objetos, métodos e outros elementos foram
adicionados à linguagem. Existem também aprimoramentos do ActionScript relacionados aos
ambientes de criação do Flash 8. O Flash Basic 8 e o Flash Professional 8 introduzem vários
novos elementos de linguagem para recursos expressivos, como filtros e modos de mistura,
além do desenvolvimento de aplicativos, como integração do JavaScript (ExternalInterface) e
entrada e saída de arquivo (FileReference e FileReferenceList).
Esta seção fornece uma visão geral dos elementos e classes da linguagem ActionScript que são
novos ou foram alterados no Flash 8 e aprimoramentos do ActionScript relacionados à
ferramenta de criação. Para obter uma lista de adições específicas ao ActionScript 2.0, consulte
“Acréscimos à linguagem ActionScript” na página 22. Para usar qualquer dos novos elementos
da linguagem nos seus scripts, tenha em mente o Flash Player 8 (o padrão) quando publicar
seus documentos.



                                                                                                            19
Os recursos a seguir foram adicionados ao Flash Basic 8 e ao Flash Professional 8 (a menos que
explicitado de forma diferente):
■    Os aprimoramentos do editor do ActionScript permitem a exibição de caracteres ocultos
     nos scripts. Para obter mais informações, consulte “Exibindo caracteres ocultos”
     na página 57.
■    As opções de depuração agora encontram-se disponíveis na janela Script, assim como no
     painel Actions, para arquivos do ActionScript.
■    O diretório Configuration que inclui arquivos XML e arquivos de classes está
     reorganizado. Para obter detalhes, consulte “Arquivos de configuração instalados com o
     Flash 8” na página 69.
■    É possível definir uma preferência para recarregar arquivos de script modificados ao
     trabalhar em um aplicativo, o que ajuda a evitar o trabalho com versões mais antigas de
     arquivos de script e a substituição de arquivos de script mais novos. Para obter mais
     informações, consulte “Sobre as preferências do ActionScript” na página 44.
■    O recurso da janela Script encontra-se disponível no Flash Basic 8 e no Flash Professional
     8. Isso significa que você pode criar um arquivo do ActionScript nos dois programas.
■    O Script Assist (Assistência de script), semelhante ao Normal Mode (Modo Normal) em
     edições anteriores do Flash, ajuda você a codificar sem que precise ter noções de sintaxe.
     Para obter mais informações sobre o Script Assist, consulte “Sobre o Script Assist”
     na página 62.
■    É possível carregar novos tipos de arquivos de imagem durante a execução, o que inclui
     imagens JPEG progressivas e arquivos GIF e PNG não-animados. Se você carregar um
     arquivo animado, o primeiro quadro da animação será exibido.
■    É possível atribuir identificadores de vinculação a arquivos de bitmap e de som
     armazenados na biblioteca (Library), o que significa que você pode anexar imagens ao
     Stage ou trabalhar com esses recursos em bibliotecas compartilhadas.
■    O cache de bitmap permite o aumento do desempenho dos aplicativos durante a execução
     por meio do cache de uma representação de bitmap de suas instâncias. Você pode usar o
     ActionScript para acessar essa propriedade. Para obter mais informações, consulte “Sobre
     cache de bitmap, rolagem e desempenho” na página 508.




20     Novidades do ActionScript no Flash 8
■   O dimensionamento em 9 trechos permite o dimensionamento de instâncias de clipe de
    filme sem expansão dos traços que contornam o clipe de filme. Você pode usar o código
    ActionScript para acessar esse recurso no Flash Basic 8 e no Flash Professional 8 ou na
    ferramenta de criação do Flash 8. Para obter mais informações, consulte “Trabalhando
    com dimensionamento de 9 trechos no ActionScript” na página 585. Para obter
    informações sobre como acessar o dimensionamento em 9 trechos na ferramenta de
    criação, consulte “Sobre dimensionamento em 9 trechos e símbolos de clipe de filme”
    na página 91 em Usando o Flash.
■   Agora você pode adicionar informações de metadados para os arquivos FLA na caixa de
    diálogo Publish Settings (Configurações de publicação). Pode adicionar um nome e uma
    descrição ao arquivo FLA usando a caixa de diálogo para ajudar a aumentar a visibilidade
    da pesquisa on-line.
■   O painel Strings (Seqüências de caracteres) está aprimorado e agora inclui suporte
    multilinha no campo String e um arquivo de linguagem XML. Para obter mais
    informações, consulte “Sobre o painel Strings” na página 479.
■   Um novo coletor de lixo faz parte do Flash Player, que usa um coletor incremental para
    melhorar o desempenho.
■   O fluxo de trabalho para a criação de aplicativos acessíveis está aprimorado. No Flash
    Player 8 não há mais necessidade de os desenvolvedores adicionarem todos os objetos ao
    índice de tabulação para que o conteúdo seja lido corretamente por um leitor de tela. Para
    obter mais informações sobre o índice de tabulação, consulte tabIndex
    (Button.tabIndex property), tabIndex (MovieClip.tabIndex property) e
    tabIndex (TextField.tabIndex property) em ActionScript 2.0 Language Reference.
■   O Flash Player aumentou a segurança dos arquivos locais; agora há mais segurança quando
    os arquivos SWF são executados no disco rígido. Para obter informações sobre segurança
    de arquivos locais, consulte “Sobre segurança do arquivo local e o Flash Player”
    na página 709.
■   Usando o código ActionScript, você pode usar a API Drawing (API de desenho) para
    controlar o estilo de linhas dos traços desenhados. Para obter informações sobre novos
    estilos de linha, consulte “Usando estilos de linha” na página 574.
■   Usando o código ActionScript, você poderá usar a API Drawing para criar gradientes mais
    complexos com os quais preencherá as formas. Para obter informações sobre
    preenchimentos de gradiente, consulte “Usando preenchimentos de gradiente complexos”
    na página 573.
■   Você pode usar o código ActionScript para aplicar muitos filtros a objetos no Stage (como
    instâncias de clipe de filme). Para obter informações sobre filtros e o ActionScript,
    consulte “Trabalhando com filtros usando ActionScript” na página 534.



                                                 Novidades do ActionScript 2.0 e do Flash 8   21
■    Para fazer o upload dos arquivos para um servidor, use as APIs FileReference e
     FileReferenceList. Para obter mais informações, consulte “Sobre upload e download de
     arquivos” na página 674.
■    Você pode usar o código ActionScript para acessar meios novos e avançados de aplicar e
     manipular cores. Para obter mais informações, consulte “Definindo valores de cores”
     na página 599 e ColorTransform (flash.geom.ColorTransform) em ActionScript 2.0
     Language Reference.
■    Foram feitos diversos aprimoramentos no texto, incluindo novas opções, propriedades e
     parâmetros nas classes TextField e TextFormat. Para obter mais informações, consulte
     TextField e TextFormat em ActionScript 2.0 Language Reference.
■    Para acessar os recursos avançados de eliminação de serrilhado (FlashType), use o código
     ActionScript. Para obter mais informações, consulte “Sobre a renderização de fontes e
     texto sem serrilhado” na página 430.
■    Quando testar o aplicativo, você poderá excluir os arquivos ASO. Selecione Control
     (Controlar) > Delete ASO files (Excluir arquivos ASO) ou Control > Delete ASO files e
     Test Movie (Testar filme) na ferramenta de criação. Para obter informações, consulte
     “Usando arquivos ASO” na página 298.
Para obter uma lista de classes, elementos de linguagem, métodos e propriedades específicas
adicionadas ao ActionScript 2.0 no Flash 8, consulte “Acréscimos à linguagem ActionScript”
na página 22.


Acréscimos à linguagem ActionScript
Esta seção lista acréscimos aos elementos e classes da linguagem ActionScript novos ou
alterados no Flash 8. As classes e os elementos de linguagem a seguir são novos acréscimos ao
Flash Player 8 ou passaram a ter suporte recentemente nesse programa.
As classes a seguir foram adicionadas ao ActionScript 2.0 no Flash 8:
■    A classe BevelFilter (do pacote flash.filters) permite a adição de efeitos de chanfro a
     objetos.
■    A classe BitmapData (do pacote flash.display) permite a criação e a manipulação de
     imagens de bitmap transparentes ou opacas dimensionadas arbitrariamente.
■    A classe BitmapFilter (do pacote flash.display) é uma classe base para efeitos de filtro.
■    A classe BlurFilter permite a aplicação de embaçamentos a objetos no Flash.
■    A classe ColorMatrixFilter (do pacote flash.filters) permite a aplicação de transformações a
     cores ARGB e valores alfa.
■    A classe ColorTransform (do pacote flash.geom) permite o ajuste de valores de cores em
     clipes de filme. A classe Color é obsoleta em relação a esta classe.


22     Novidades do ActionScript no Flash 8
■   A classe ConvolutionFilter (do pacote flash.filters) permite a aplicação de efeitos de filtro
    de torção de matriz.
■   A classe DisplacementMapFilter (do pacote flash.filters) permite o uso de valores em pixels
    de um objeto BitmapData para o deslocamento de um objeto.
■   A classe DropShadowFilter (do pacote flash.filters) permite a adição de sombreamentos a
    objetos.
■   A classe ExternalInterface (do pacote flash.external) permite que você se comunique
    usando o ActionScript com o recipiente do Flash Player (o sistema que contém o
    aplicativo Flash, como um navegador com JavaScript, ou o aplicativo desktop).
■   A classe FileReference (do pacote flash.net ) permite o upload e o download de arquivos
    entre o computador do usuário e um servidor.
■   A classe FileReferenceList (do pacote flash.net) permite a seleção de um ou mais arquivos
    para upload.
■   A classe GlowFilter (do pacote flash.filters) permite a adição de efeitos de brilho a objetos.
■   A classe GradientBevelFilter (do pacote flash.filters) permite a adição de chanfros
    gradientes a objetos.
■   A classe GradientGlowFilter (do pacote flash.filters) permite a adição de efeitos de brilho
    gradiente a objetos.
■   A classe IME (da classe System) permite a manipulação do IME (Input Method Editor,
    Editor de método de entrada) do sistema operacional no Flash Player.
■   A classe Locale (do pacote mx.lang) permite o controle do modo de exibição de texto
    multilíngüe em um arquivo SWF.
■   A classe Matrix (do pacote flash.geom) representa uma matriz de transformação que
    determina como mapear pontos de um espaço de coordenada para o outro.
■   O objeto Point (do pacote flash.geom) representa um local em um sistema de coordenadas
    bidimensional, onde x representa o eixo horizontal e y representa o eixo vertical.
■   A classe Rectangle (do pacote flash.geom) permite a criação e a modificação de objetos
    Rectangle.
■   A classe TextRenderer (do pacote flash.text) oferece funcionalidade para fontes
    incorporadas sem serrilhado.
■   A classe Transform (do pacote flash.geom) coleta dados sobre transformações de cores e
    manipulações de coordenadas aplicadas a uma instância MovieClip.
    N O TA




             No Flash 8 foi adicionado suporte oficial para a classe AsBroadcaster.




                                                    Novidades do ActionScript 2.0 e do Flash 8   23
Os novos elementos, métodos e funções da linguagem adicionados a classes existentes no
ActionScript incluem:
■    A função global showRedrawRegions permite que o player do depurador indique as
     regiões da tela que estão sendo redesenhadas (ou seja, regiões problemáticas que estão
     sendo atualizadas). A função faz o player mostrar o que foi redesenhado, mas não permite
     que você controle as regiões de redesenho.
■    A propriedade blendMode da classe Button, que define o modo de mistura para a instância
     do botão.
■    A propriedade cacheAsBitmap da classe Button, que permite o cache do objeto como
     representação interna de bitmap da instância.
■    A propriedade filters da classe Button, que é um array indexado que contém cada
     objeto filtro associado ao botão.
■    A propriedade scale9Grid da classe Button, que é a região retangular que define nove
     regiões de dimensionamento para a instância.
■    A propriedade hasIME da classe System.capabilities, que indica se o sistema possui um
     IME instalado.
■    A propriedade getUTCYear da classe Date, que retorna o ano dessa data, de acordo com a
     hora universal.
■    A constante ALT da classe Key.
■    O método isAccessible() da classe Key retorna um valor booleano que indica se a
     última tecla pressionada pode ser acessada por outros arquivos SWF, dependendo das
     restrições de segurança.
■    O manipulador de eventos onHTTPStatus da classe LoadVars retorna o código de status
     retornado do servidor (por exemplo, o valor 404 para página não encontrada). Para obter
     mais informações, consulte onHTTPStatus (LoadVars.onHTTPStatus handler) em
     ActionScript 2.0 Language Reference.
■    O método attachBitmap() da classe MovieClip, que anexa uma imagem de bitmap a um
     clipe de filme. Para obter mais informações, consulte BitmapData
     (flash.display.BitmapData) em ActionScript 2.0 Language Reference.
■    O método beginBitmapFill() da classe MovieClip, que preenche um clipe de filme com
     uma imagem de bitmap.
■    Os parâmetros spreadMethod, interpolationMethod e focalPointRatio do método
     beginGradientFill() da classe MovieClip. Esse método preenche uma área de desenho
     com uma imagem de bitmap, e o bitmap pode ser repetido ou colocado lado a lado para
     preencher a área.




24     Novidades do ActionScript no Flash 8
■   A propriedade blendMode da classe MovieClip, que permite a definição do modo de
    mistura para a instância.
■   A propriedade cacheAsBitmap da classe MovieClip, que permite o cache do objeto como
    uma representação interna de bitmap da instância.
■   A propriedade filters da classe MovieClip, que é um array indexado que contém cada
    objeto filtro associado no momento à instância.
■   O método getRect() da classe MovieClip, que retorna propriedades que são os valores de
    coordenada mínimo e máximo da instância especificada.
■   O método lineGradientStyle() da classe MovieClip, que especifica um estilo de linha
    gradiente que o Flash usa quando desenha um caminho.
■   Os parâmetros pixelHinting, noScale, capsStyle, jointStyle e miterLimit do
    método lineStyle() da classe MovieClip. Esses parâmetros especificam tipos de estilos
    de linha que você pode usar ao desenhar linhas.
■   A propriedade opaqueBackground da classe MovieClip, que define a cor de fundo opaca
    (não transparente) do clipe de filme como a cor que o valor hexadecimal RGB especifica.
■   A propriedade scale9Grid da classe MovieClip, que é a região retangular que define nove
    regiões de dimensionamento para a instância.
■   A propriedade scrollRect da classe MovieClip, que permite que você role rapidamente o
    conteúdo do clipe de filme e que a janela exiba um conteúdo maior.
■   A propriedade transform da classe MovieClip, que permite configurações em relação aos
    limites de matriz, transformação de cores e pixels de um clipe de filme. Para obter mais
    informações, consulte Transform (flash.geom.Transform) em ActionScript 2.0
    Language Reference.
■   O parâmetro status da classe MovieClipLoader. O manipulador de eventos
    onLoadComplete retorna o código de status retornado do servidor (por exemplo, o valor
    404 para página não encontrada). Para obter mais informações, consulte onLoadComplete
    (MovieClipLoader.onLoadComplete event listener) em ActionScript 2.0 Language
    Reference.
■   O manipulador de eventos onLoadError da classe MovieClipLoader é chamado quando
    um arquivo carregado com MovieClipLoader.loadClip() não pode ser carregado.
■   O parâmetro secure do método SharedObject.getLocal() determina se o acesso a esse
    objeto compartilhado se restringe a arquivos SWF transmitidos por uma conexão
    HTTPS. Para obter mais informações, consulte getLocal (SharedObject.getLocal
    method) em ActionScript 2.0 Language Reference.
■   A constante ID3 da classe Sound.




                                                Novidades do ActionScript 2.0 e do Flash 8   25
■    A propriedade sandboxType da classe System.security indica o tipo de sandbox de
     segurança em que o arquivo SWF de chamada está operando. Para obter mais
     informações, consulte sandboxType (security.sandboxType property) em
     ActionScript 2.0 Language Reference.
■    O método parse() da classe TextField.StyleSheet.
■    A propriedade antiAliasType da classe TextField, que define o tipo de eliminação de
     serrilhado utilizada na instância TextField.
■    A propriedade filters da classe TextField, que é um array indexado que contém cada
     objeto filtro associado no momento à instância TextField.
■    A propriedade gridFitType da classe TextField, que define o tipo de ajuste à grade usado
     na instância. Para obter informações sobre ajuste à grade e TextField.gridFitType, consulte
     gridFitType (TextField.gridFitType property) em ActionScript 2.0 Language
     Reference.
■    A propriedade sharpness da classe TextField, que estabelece a definição das bordas de
     glifo para a instância TextField. Se usar essa propriedade, terá de definir o método
     antiAliasType() como avançado.
■    A propriedade thickness da classe TextField, que define a espessura das bordas de glifo
     na instância TextField. Se usar essa propriedade, terá de definir o método
     antiAliasType() como avançado.
■    O valor justify da propriedade align da classe TextFormat, que permite a justificação
     de um parágrafo específico.
■    A propriedade indent da classe TextFormat, que permite o uso de valores negativos.
■    A propriedade kerning da classe TextFormat, que permite a ativação ou desativação do
     kerning para o objeto TextFormat.
■    A propriedade leading da classe TextFormat, que permite o uso de entrelinhamento
     negativo, ou seja, que o espaço entre as linhas seja inferior à altura do texto. Isso permite
     que você coloque linhas de texto juntas nos aplicativos.
■    A propriedade letterSpacing da classe TextFormat, que permite a especificação da
     quantidade de espaço distribuída uniformemente entre os caracteres.
■    A propriedade _alpha da classe Video, que é a quantidade especificada de transparência
     para o objeto vídeo.
■    A propriedade _height da classe Video, que indica a altura da instância do vídeo.
■    A propriedade _name da classe Video, que indica o nome de instância do vídeo.
■    A propriedade _parent da classe Video, que indica a instância ou objeto de clipe de vídeo
     que contém a instância do vídeo.




26     Novidades do ActionScript no Flash 8
■   A propriedade _rotation da classe Video, que permite a definição do valor de rotação da
    instância do vídeo em graus.
■   A propriedade _visible da classe Video, que permite a definição da visibilidade de uma
    instância de vídeo.
■   A propriedade _width da classe Video, que permite a definição da largura da instância do
    vídeo.
■   A propriedade _x da classe Video, que permite a definição da coordenada x da instância do
    vídeo.
■   A propriedade _xmouse da classe Video, que permite a definição da coordenada x da
    posição do ponteiro do mouse.
■   A propriedade _xscale da classe Video, que permite a definição do percentual de
    dimensionamento horizontal da instância do vídeo.
■   A propriedade _y da classe Video, que permite a definição da coordenada y da instância do
    vídeo.
■   A propriedade _ymouse da classe Video, quer permite a definição da coordenada y da
    posição do ponteiro do mouse.
■   A propriedade _yscale da classe Video, que permite a definição do percentual de
    dimensionamento vertical da instância do vídeo.
■   O manipulador de eventos onHTTPStatus da classe XML retorna o código de status
    retornado do servidor (por exemplo, o valor 404 para página não encontrada). Para obter
    mais informações, consulte onHTTPStatus (XML.onHTTPStatus handler) em
    ActionScript 2.0 Language Reference.
■   A propriedade localName da classe XMLNode, que retorna o nome completo do objeto
    nó XML (incluindo o prefixo e o nome local).
■   A propriedade namespaceURI da classe XMLNode, que lê o URI do namespace para o
    qual o prefixo do nó XML resolve. Para obter mais informações, consulte namespaceURI
    (XMLNode.namespaceURI property) em ActionScript 2.0 Language Reference.
■   A propriedade prefix da classe XMLNode, que lê o prefixo do nome do nó.
■   O método getNamespaceForPrefix() da classe XMLNode, que retorna o URI do
    namespace associado ao prefixo especificado para o nó.
■   O método getPrefixForNamespace da classe XMLNode, que retorna o prefixo associado
    a um URI de namespace especificado para o nó.




                                                Novidades do ActionScript 2.0 e do Flash 8   27
Sobre elementos de linguagem obsoletos
Alguns elementos de linguagem estão obsoletos no Flash Player 8. Para obter uma lista dos
elementos de linguagem obsoletos e alternativas para uso no Flash Player 8, consulte as seções
a seguir do ActionScript 2.0 Language Reference:
■    Deprecated Class summary
■    Deprecated Function summary
■    Deprecated Property summary
■    Deprecated Operator summary



Alterações de edição do ActionScript
O editor do ActionScript no painel Actions e na janela Script foi atualizado de várias maneiras
para ficar mais eficiente e fácil de usar do que nas versões anteriores da ferramenta. Essas
alterações são resumidas nesta seção.
View hidden characters (Exibir caracteres ocultos)      Agora você pode usar o menu pop-up
Options (Opções) dos painéis Script, Debugger (Depurador) e Output (Saída) para exibir ou
ocultar caracteres quando escrever arquivos de script no painel Actions ou na janela Script.
Para obter informações sobre esse recurso, consulte “Exibindo caracteres ocultos”
na página 57.
Script assist added to Actions panel (Script assist adicionado ao painel Actions)       Nas
versões anteriores do Flash, você podia trabalhar no painel Actions tanto no modo normal, em
que você preenchia opções e parâmetros para criar código, quanto no modo especialista, em
que você adicionava comandos diretamente ao painel Script. Essas opções não estavam
disponíveis no Flash MX 2004 e no Flash MX Professional 2004. No entanto, no Flash Basic
8 e no Flash Professional 8, você pode trabalhar no modo Script Assist, que é semelhante ao
modo normal e muito mais eficiente que ele. Para obter informações sobre o modo Script
Assist, consulte Capítulo 13, “Criando ActionScript com o Script Assist” em Usando o Flash.
Para ver um tutorial sobre o Script Assist, consulte o Capítulo 13, “Criando um evento
startDrag/stopDrag com o Script Assist” do manual Usando o Flash.




28     Novidades do ActionScript no Flash 8
Reload modified files (Recarregar arquivos modificados)        Você pode recarregar os
arquivos de script modificados quando trabalhar em um aplicativo. É exibida uma mensagem
de aviso, solicitando o recarregamento dos arquivos de script modificados associados ao
aplicativo em que você está trabalhando. Esse recurso é especialmente vantajoso para equipes
que trabalham simultaneamente em aplicativos. Ele ajuda a evitar o trabalho com scripts
desatualizados ou que versões mais recentes de um script acabem sendo substituídas. Se um
arquivo de script tiver sido movido ou excluído, uma mensagem de aviso será exibida e
solicitará o salvamento dos arquivos conforme necessário. Para obter mais informações,
consulte “Sobre as preferências do ActionScript” na página 44.


Alterações no modelo de segurança para
arquivos SWF instalados localmente
O Flash Player 8 possui um modelo de segurança novo e aperfeiçoado por meio do qual os
aplicativos Flash e os arquivos SWF de um computador local podem se comunicar com a
Internet e o sistema de arquivos local, em vez de serem executados de um servidor remoto da
Web. Ao desenvolver um aplicativo Flash, você precisa indicar se um arquivo SWF pode se
comunicar com uma rede ou com um sistema de arquivos local.
N OT A




         Nesta descrição, um arquivo SWF local é um arquivo SWF instalado localmente no
         computador de um usuário (e não disponibilizado a partir de um site) e não inclui
         arquivos de projetor (EXE).

Nas versões anteriores do Flash Player, os arquivos SWF locais podiam interagir com outros
arquivos SWF e carregar dados de qualquer computador remoto ou local sem configurar
definições de segurança. No Flash Player 8, um arquivo SWF não pode fazer conexões com o
sistema de arquivos local e a rede (como a Internet) no mesmo aplicativo sem fazer uma
configuração de segurança. Isso é para sua segurança. Dessa forma, um arquivo SWF não pode
ler arquivos no seu disco rígido e depois enviar o conteúdo deles pela Internet.
A restrição de segurança afeta todo o conteúdo implantado localmente, seja um conteúdo
herdado (um arquivo FLA criado em uma versão anterior do Flash) ou criado no Flash 8.
Usando o Flash MX 2004 ou uma ferramenta de criação anterior, você pode testar um
aplicativo Flash que seja executado localmente e também acesse a Internet. No Flash Player 8,
esse aplicativo agora solicita permissão ao usuário para se comunicar com a Internet.




                     Alterações no modelo de segurança para arquivos SWF instalados localmente   29
Quando você testa um arquivo no disco rígido, são necessárias várias etapas para determinar se
ele é um documento local confiável (seguro) ou um documento potencialmente não-confiável
(sem segurança). Se você criar o arquivo no ambiente de criação do Flash (por exemplo,
quando selecionar Control > Test Movie), seu arquivo será considerado confiável, pois ele se
encontra no ambiente de teste.
No Flash Player 7 e anteriores, os arquivos SWF locais tinham permissões para acessar o
sistema de arquivos local e a rede. No Flash Player 8, os arquivos SWF locais podem ter três
níveis de permissão:
■    Access the local file system only (Acessar somente o sistema de arquivos local), o nível
     padrão. O arquivo SWF local pode ser lido no sistema de arquivos local e em caminhos de
     rede de convenção universal de atribuição de nomes (UNC, Universal Naming
     Convention) e não pode se comunicar com a Internet.
■    Access the network only (Acessar somente a rede). O arquivo SWF local pode acessar
     somente a rede (como a Internet) e não o sistema de arquivos local onde o arquivo SWF
     está instalado.
■    Access to both the local file system and the network (Acessar o sistemas de arquivos local e
     a rede). O arquivo SWF local pode ser lido no sistema de arquivos local onde o arquivo
     está instalado, pode ser lido em qualquer servidor que lhe conceda permissão (e gravar
     nele) e pode criar vários scripts para outros arquivos SWF na rede ou no sistema de
     arquivos local que lhe conceda permissão.
Para obter mais detalhes sobre cada nível de permissão, consulte “Sobre segurança do arquivo
local e o Flash Player” na página 709.
Há também pequenas alterações em System.security.allowDomain e aprimoramentos em
System.security.allowInsecureDomain. Para obter mais informações sobre segurança de
arquivos locais, consulte o Capítulo 17, “Noções básicas de segurança.”




30     Novidades do ActionScript no Flash 8
CAPÍTULO 2


Escrevendo e editando o
ActionScript 2.0
                                                                                                      2
Ao escrever o código ActionScript no Macromedia Flash Basic 8 ou no Macromedia Flash
Professional 8, use o painel Actions (Ações) ou a janela Script. O painel Actions e a janela
Script contêm um editor de código completo (o editor do ActionScript) que inclui referências
de código e sinalização por cores, formatação de código, realce de sintaxe, verificação de
sintaxe, depuração, números de linha, quebra automática de linha e suporte a Unicode em
duas exibições diferentes. Para obter mais informações sobre o editor do ActionScript,
consulte “Usando o painel Actions e a janela Script” na página 36.
Use um dos dois métodos para escrever o código ActionScript no Flash. Você pode criar
scripts que façam parte de seu documento do Flash (ou seja, scripts incorporados ao arquivo
FLA) ou criar scripts externos (scripts ou classes armazenadas em arquivos externos). Não é
possível usar o painel Actions para criar scripts externos.
Use o editor do ActionScript no painel Actions ao criar scripts em um arquivo FLA. O painel
Actions contém o editor do ActionScript em um painel Script e ferramentas de suporte para
facilitar a criação de scripts. Essas ferramentas incluem a caixa de ferramentas Actions (Ações)
que oferece um acesso rápido aos elementos básicos da linguagem ActionScript; o navegador
Script que ajuda na navegação por todos os scripts do documento; e o modo Script Assist
(Assistência de script) que solicita os elementos necessários para a criação de scripts. Para obter
mais informações sobre o painel Actions, consulte “Sobre o painel Actions” na página 37. Para
obter mais informações sobre o Script Assist, consulte “Sobre o Script Assist” na página 62.
Quando precisar criar um script externo, use o editor do ActionScript na janela Script para
criar um novo arquivo do ActionScript. (Você também pode usar o seu editor de texto favorito
para criar um arquivo externo do AS.) Na janela Script, o editor do Action Script inclui
recursos de assistência a código, como referências de código e sinalização por cores, verificação
de sintaxe etc., da mesma forma que no painel Actions. Para obter mais informações sobre a
janela Script, consulte “Sobre a janela Script” na página 38.




                                                                                                 31
O Flash oferece assistência adicional a scripts através de comportamentos. Os
comportamentos são funções predefinidas do ActionScript que você pode anexar a objetos no
documento do Flash sem precisar criar o código ActionScript. Para obter mais informações
sobre comportamentos, consulte “Sobre comportamentos” na página 65.
Para obter mais informações sobre como manipular eventos, consulte as seguintes seções:
Sobre o ActionScript e eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Organizando o código ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Usando o painel Actions e a janela Script. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Sobre o painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Sobre a janela Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Sobre a codificação no painel Actions e na janela Script . . . . . . . . . . . . . . . . . . . . . . 39
Sobre recursos do painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Sobre comportamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Sobre as configurações de publicação do ActionScript . . . . . . . . . . . . . . . . . . . . . . . 66


Sobre o ActionScript e eventos
No Macromedia Flash Basic 8 e no Macromedia Flash Professional 8, o código ActionScript é
executado quando ocorre um evento: por exemplo, quando um clipe de filme é carregado,
quando um quadro-chave é inserido na timeline ou quando o usuário clica em um botão. Os
eventos podem ser ativados pelo usuário ou pelo sistema. Os usuários clicam em botões do
mouse e pressionam teclas; o sistema ativa eventos quando condições específicas são atendidas
ou quando processos são concluídos (o arquivo SWF é carregado, a timeline alcança um
determinado quadro, um elemento gráfico conclui o download etc.).
Quando ocorre um evento, você cria um manipulador de eventos para responder ao evento com
uma ação. Compreender quando e onde ocorrerão os eventos o ajudará a determinar como e
onde você responderá a eles com uma ação e quais ferramentas do ActionScript utilizará em
cada caso. Para obter mais informações, consulte “Sobre a criação de scripts para manipular
eventos” na página 35.
Os eventos podem ser agrupados em várias categorias: eventos de mouse e teclado, que
ocorrem quando o usuário interage com seu aplicativo Flash através do mouse e do teclado;
eventos de clipe, que ocorrem em clipes de filme; e eventos de quadro, que ocorrem em
quadros na timeline.
Para obter informações sobre os tipos de scripts que podem ser criados para manipular
eventos, consulte “Sobre a criação de scripts para manipular eventos” na página 35.




32       Escrevendo e editando o ActionScript 2.0
Eventos de mouse e teclado
Quando o usuário interage com seu aplicativo ou arquivo SWF, ele ativa eventos de mouse e
teclado. Por exemplo, quando ele rola sobre um botão, ocorre o evento Button.onRollOver
ou on(rollOver); quando ele clica em um botão, o evento Button.onRelease é ativado; se
uma tecla do teclado for pressionada, o evento on(keyPress) ocorrerá. Você pode criar um
código em um quadro ou anexar scripts a uma instância para manipular esses eventos e
adicionar toda a interatividade desejada.


Eventos de clipe
Em um clipe de filme, você pode reagir a diversos eventos de clipe ativados quando o usuário
entra ou sai da cena ou interagir com a cena usando o mouse ou o teclado. Por exemplo, você
pode carregar uma imagem externa SWF ou JPG no clipe de filme quando o usuário entrar na
cena ou permitir que os movimentos do mouse do usuário reposicionem elementos na cena.


Eventos de quadro
Em uma timeline principal ou de clipe de filme, um evento de sistema ocorre quando a
reprodução entra em um quadro-chave — conhecido como evento de quadro. Os eventos de
quadro são úteis para ativar ações baseadas na passagem de tempo (que se movem pela
timeline) ou para interagir com elementos visíveis no momento no Stage. Quando você
adiciona um script a um quadro-chave, ele é executado quando o quadro-chave é alcançado
durante uma reprodução. Os script anexados a um quadro são chamados scripts de quadro.
Uma das utilizações mais comuns dos scripts de quadro é interromper a reprodução quando
um determinado quadro-chave é alcançado. Isso é feito com a função stop(). Selecione um
quadro-chave e adicione a função stop() como um elemento de script no painel Actions.




Ao interromper arquivo SWF em um quadro-chave específico, você precisará executar uma
ação. Você pode, por exemplo, usar um script de quadro para atualizar dinamicamente o valor
de um rótulo, gerenciar a interação dos elementos no Stage etc.




                                                          Sobre o ActionScript e eventos   33
Organizando o código ActionScript
É possível anexar scripts a quadros-chave e instâncias de objeto (clipes de filme, botões e
outros símbolos). Entretanto, se o seu código ActionScript for distribuído por vários quadros-
chave e instâncias de objeto, a depuração de seu aplicativo ficará muito mais difícil. Também
será difícil compartilhar o código com diferentes aplicativos Flash. Portanto, é importante que
você siga as práticas recomendadas de codificação ao criar o ActionScript no Flash.
Em vez de anexar scripts aos elementos, como quadros-chave, clipes de filme e botões,
responda aos eventos chamando as funções residentes em um local central. Um dos métodos
consiste em anexar o ActionScript incorporado ao primeiro ou ao segundo quadro da
timeline, sempre que possível, para que você não precise pesquisar o arquivo FLA a fim de
localizar todo o código. Uma prática comum envolve a criação de uma camada denominada
actions e a inclusão do código ActionScript nessa camada.




Ao anexar todos os scripts a elementos individuais, você incorpora todo o código ao arquivo
FLA. Se o compartilhamento de seu código com outros aplicativos do Flash for um requisito
importante para você, use a janela Script ou o seu editor de texto favorito para criar um
arquivo externo do ActionScript (AS).
A criação de um arquivo externo torna o seu código mais modular e bem organizado. À
medida que seu projeto for se desenvolvendo, essa conveniência terá cada vez mais utilidade
do que você imagina. Um arquivo externo ajudará na depuração e também no gerenciamento
do controle de origem caso você esteja trabalhando em um projeto junto com outros
desenvolvedores.
Para usar o código ActionScript contido em um arquivo externo do AS, crie um script no
arquivo FLA e use a instrução #include para acessar o código armazenado externamente,
como mostrado no exemplo a seguir:
#include "../core/Functions.as"




34    Escrevendo e editando o ActionScript 2.0
Também é possível usar o ActionScript 2.0 para criar classes personalizadas. Armazene as
classes personalizadas em arquivos externos do AS e use instruções import em um script para
exportar as classes para o arquivo SWF, em vez de usar instruções #include. Para obter mais
informações sobre como criar arquivos de classe, consulte “Criando arquivos de classes
personalizados” na página 249 e “Sobre a importação de arquivos de classes” na página 254
que tratam da importação desses arquivos. Você também pode usar componentes (clipes de
filme predefinidos) para compartilhar código e funcionalidade, como scripts e elementos de
UI.
NO T A




         O código do ActionScript em arquivos externos é compilado em um arquivo SWF
         quando você publica, exporta, testa ou depura um arquivo FLA. Portanto, se você fizer
         qualquer alteração em um arquivo externo, será preciso salvá-lo e recompilar os
         arquivos FLA que o utilizam.

Ao criar o ActionScript no Flash 8, use o painel Actions, a janela Script ou ambos. O uso do
painel Actions ou da janela Script é determinado pelo modo de resposta aos eventos, pelo
modo de organização do código e, principalmente, pelas práticas recomendadas de
codificação.
Para obter mais informações sobre convenções e práticas recomendadas de codificação,
consulte “Convenções de codificação do ActionScript” na página 782.
Outros problemas relacionados a fluxo de trabalho e organização de código deverão ser
considerados quando você usar comportamentos, que são funções predefinidas do
ActionScript (consulte “Sobre comportamentos” na página 65).


Sobre a criação de scripts para manipular eventos
A criação de código para eventos pode ser categorizada em dois grupos principais: eventos que
ocorrem na timeline (em quadros-chave) e eventos que ocorrem em instâncias de objeto
(clipes de filme, botões e componentes). A interatividade de seu aplicativo ou arquivo SWF
pode ser distribuída pelos vários elementos de seu projeto; você também pode optar por
adicionar scripts diretamente a esses elementos. Entretanto, a Macromedia recomenda a não
adição direta de scripts a esses elementos (quadros-chave e objetos). Nesse caso, você deve
responder aos eventos chamando as funções residentes em um local central, conforme descrito
em “Organizando o código ActionScript”.




                                                          Organizando o código ActionScript   35
Usando o painel Actions e a janela Script
Para criar scripts em um arquivo FLA, insira o ActionScript diretamente no painel Actions.
Para criar scripts externos a serem incluídos ou importados para o seu aplicativo, você pode
usar a janela Script (File [Arquivo] > New [Novo] e selecionar ActionScript File [Arquivo do
ActionScript]) ou o seu editor de texto preferido.
A utilização do painel Actions ou da janela Script equivale ao uso dos recursos do editor do
ActionScript para criar, formatar e editar o código. O painel Actions e a janela Script possuem
o painel Script (onde o código é digitado) e a caixa de ferramentas Actions. O painel Actions
oferece mais alguns recursos de assistência a código do que a janela Script. O Flash oferece
esses recursos no painel Actions por eles serem especialmente úteis no contexto de edição do
ActionScript em um arquivo FLA.

Para exibir o painel Actions, siga um destes procedimentos:
■    Selecione Window (Janela) > Actions (Ações).
■    Pressione F9.

Para exibir a janela Script, siga um destes procedimentos:
■    Para começar a escrever um novo script, selecione File (Arquivo) > New (Novo) e
     ActionScript File (Arquivo do ActionScript).
■    Para abrir um script existente, selecione File > Open (Abrir) e abra um arquivo do AS.
■    Para editar um script já aberto, clique na guia do documento que exibe o nome do script.
Para obter mais informações, consulte os tópicos a seguir:
■    “Sobre o painel Actions” na página 37
■    “Sobre a janela Script” na página 38




36     Escrevendo e editando o ActionScript 2.0
Sobre o painel Actions
Use o painel Actions para criar o ActionScript em um documento do Flash (arquivo FLA). O
painel consiste em três painéis, e cada um deles oferece suporte à criação e ao gerenciamento
de scripts.
Actions (Ações), caixa
de ferramentas         Navegador Script          Script, painel                  Menu pop-up




   Caixa de ferramentas Actions Use esta caixa de ferramentas para pesquisar uma lista
   categórica de elementos da linguagem ActionScript (funções, classes, tipos etc.) e, em
   seguida, insira-os no painel Script. Para inserir um elemento de script no painel Script,
   clique duas vezes nele ou arraste-o diretamente para esse painel. Você também pode
   adicionar elementos de linguagem aos scripts usando o botão Add (+) (Adicionar)
   localizado na barra de ferramentas do painel Actions. Para obter mais informações,
   consulte “Sobre as barras de ferramentas do painel Actions e da janela Script”
   na página 40.
   Navegador Script       Exibe uma lista hierárquica de elementos do Flash (clipes de filme,
   quadros e botões) contendo scripts. Use o navegador Script para se mover rapidamente
   entre todos os scripts do documento do Flash.
   Se você clicar em um item no navegador Script, o script associado a esse item aparecerá no
   painel Script e a reprodução passará para essa posição na timeline. Se você clicar duas vezes
   em um item do navegador Script, o script ficará preso (travado no lugar). Para obter mais
   informações, consulte “Prendendo scripts no painel Actions” na página 63.




                                                                     Sobre o painel Actions    37
Painel Script    No painel Script, você digita seu código. O painel fornece ferramentas
     para a criação de scripts em um editor completo (o editor do ActionScript) que inclui
     verificação e formatação de sintaxe, referências de código, sinalização por cores, depuração
     e outros recursos que simplificam a criação. Para obter mais informações, consulte
     “Usando o painel Actions e a janela Script” na página 36.
     Para obter informações sobre cada botão da barra de ferramentas do painel Actions,
     consulte “Sobre a codificação no painel Actions e na janela Script” na página 39. Para
     obter mais informações sobre os recursos do painel Actions, consulte os seguintes tópicos:
     ■    “Sobre as barras de ferramentas do painel Actions e da janela Script” na página 40
     ■    “Sobre as opções de edição do ActionScript” na página 42
     ■    “Sobre as referências de código no Flash” na página 47
     ■    “Formatando código” na página 53
     ■    “Usando o realce de sintaxe” na página 54
     ■    “Usando números de linha e quebra automática de linha” na página 55
     ■    “Usando teclas de atalho de Escape” na página 56
     ■    “Exibindo caracteres ocultos” na página 57
     ■    “Usando a ferramenta Find” na página 58
     ■    “Verificando sintaxe e pontuação” na página 59
     ■    “Importando e exportando scripts” na página 60


Sobre a janela Script
Você pode criar e editar o ActionScript na janela Script ao criar um novo arquivo do
ActionScript, do Flash Communication ou do Flash JavaScript. Use a janela Script para criar e
editar arquivos de script externos. A janela oferece suporte à sinalização da sintaxe por cores, a
referências de código e a outras opções de editor.
Nessa janela, é possível criar um ActionScript externo, a comunicação do ActionScript e
arquivos do Flash JavaScript. Dependendo do tipo de arquivo de script externo criado, a caixa
de ferramentas Actions fornecerá uma lista completa dos elementos de linguagem disponíveis
para cada um deles.
Ao usar a janela Script, você perceberá que alguns dos outros recursos de assistência a código,
como o navegador Script, o modo Script Assist e os comportamentos, não estarão disponíveis.
Isso ocorre porque esses recursos são úteis apenas no contexto de criação de um documento do
Flash, e não de criação de um arquivo de script externo.




38       Escrevendo e editando o ActionScript 2.0
Você também observará que várias opções disponíveis no painel Actions não estão disponíveis
na janela Script. A janela Script oferece suporte às seguintes opções de editor: caixa de
ferramentas Actions, recursos localizar e substituir, verificação de sintaxe, formatação
automática, referências de código e opções de depuração (somente arquivos do ActionScript).
Além disso, ela oferece suporte à exibição de números de linha, caracteres ocultos e quebra
automática de linha.

Para exibir a janela Script:
1.   Selecione File (Arquivo) > New (Novo).
2.   Selecione o tipo de arquivo externo que deseja criar (arquivo do ActionScript, arquivo do
     Flash Communication ou arquivo do Flash JavaScript).
É possível abrir vários arquivos externos ao mesmo tempo; os nomes dos arquivos são exibidos
em guias na parte superior da janela Script. Para obter mais informações sobre os recursos da
janela Script, consulte os seguintes tópicos:
■    “Sobre as barras de ferramentas do painel Actions e da janela Script” na página 40
■    “Sobre as opções de edição do ActionScript” na página 42
■    “Sobre as referências de código no Flash” na página 47
■    “Formatando código” na página 53
■    “Usando o realce de sintaxe” na página 54
■    “Usando números de linha e quebra automática de linha” na página 55
■    “Usando teclas de atalho de Escape” na página 56
■    “Exibindo caracteres ocultos” na página 57
■    “Usando a ferramenta Find” na página 58
■    “Verificando sintaxe e pontuação” na página 59
■    “Importando e exportando scripts” na página 60


Sobre a codificação no painel Actions e
na janela Script
O painel Script, local de edição do código, é o principal elemento do painel Actions e da
janela Script. O painel Actions e a janela Script oferecem recursos básicos de assistência a
código e de edição de script, como referências de código, sinalização por cores, formatação
automática etc.
Os recursos que ajudam na edição do código podem ser acessados na barra de ferramentas do
painel Actions ou da janela Script, através do sistema de menu e no próprio painel Script.



                                       Sobre a codificação no painel Actions e na janela Script   39
Os tópicos a seguir apresentam os vários recursos do editor do ActionScript (painel Actions e
janela Script):
■    “Sobre as barras de ferramentas do painel Actions e da janela Script” na página 40
■    “Sobre as opções de edição do ActionScript” na página 42
■    “Sobre as preferências do ActionScript” na página 44
■    “Sobre as referências de código no Flash” na página 47
■    “Formatando código” na página 53
■    “Usando o realce de sintaxe” na página 54
■    “Usando números de linha e quebra automática de linha” na página 55
■    “Usando teclas de atalho de Escape” na página 56
■    “Exibindo caracteres ocultos” na página 57
■    “Usando a ferramenta Find” na página 58
■    “Verificando sintaxe e pontuação” na página 59
■    “Importando e exportando scripts” na página 60
Para obter os recursos específicos apenas do painel Actions, por exemplo, prender o script e
navegador Script, consulte “Sobre recursos do painel Actions” na página 62.


Sobre as barras de ferramentas do painel Actions e
da janela Script
As barras de ferramentas do painel Actions e da janela Script contêm links para os recursos de
assistência a código que ajudam a simplificar e agilizar a codificação no ActionScript. Elas
serão diferentes caso você utilize o editor do ActionScript no painel Actions ou no painel
Script. A imagem a seguir exibe os recursos localizados na barra de ferramentas do painel
Actions. As opções marcadas estão disponíveis apenas no painel Actions.
    Add a new item to the script (Adicionar um novo item ao script)                   Menu pop-up*
          Find (Localizar)          Debug Options (Opções de depuração)*
               Insert target path (Inserir caminho de destino)* Script Assist *




                              Show Code Hint (Mostrar referência de código)          Referência
                         Auto Format (Formatação automática)
                    Check Syntax (Verificar sintaxe)
                                                                      * Somente no painel Actions




40       Escrevendo e editando o ActionScript 2.0
Os recursos localizados na barra de ferramentas serão discutidos em detalhes em “Usando o
painel Actions e a janela Script” na página 36. Veja a seguir um breve resumo dos botões
disponíveis nas barras de ferramentas do painel Actions e da janela Script.
NO TA




         Algumas opções a seguir estão localizadas apenas no painel Actions. Esses recursos
         estão marcados como Somente no painel Actions.


        Add a new item to the script (Adicionar um novo item ao script) Exiba todos os
        elementos de linguagem também existentes na caixa de ferramentas do ActionScript. A
        seleção de um item na lista categorizada de elementos de linguagem adiciona-o ao script.
        Find (Localizar) Localize e substitua qualquer texto no código ActionScript. Para obter
        mais informações, consulte “Usando a ferramenta Find” na página 58.
        Insert target path (Inserir caminho de destino)  Somente no painel Actions. Ajuda na
        configuração de um caminho de destino relativo ou absoluto de uma ação no script. Para
        obter mais informações, consulte “Inserindo caminhos de destino” na página 65.
        Check Syntax (Verificar sintaxe)     Verifique erros na sintaxe do script atual. Os erros de
        sintaxe são listados no painel Output (Saída). Para obter mais informações, consulte
        “Verificando sintaxe e pontuação” na página 59.
        Auto Format (Formatação automática)         Formate seu script para uma sintaxe de
        codificação apropriada e para melhorar a legibilidade. Você pode definir as preferências de
        formatação automática na caixa de diálogo Preferences (Preferências), disponível no menu
        Edit (Editar) ou no menu pop-up do painel Actions. Para obter mais informações,
        consulte “Formatando código” na página 53.
        Show Code Hint (Mostrar referência de código)       Se tiver desativado a referência de
        código automática, você poderá usar o comando Show Code Hint para exibir
        manualmente uma referência de código relativa à linha de código na qual estiver
        trabalhando. Para obter mais informações, consulte “Sobre o Script Assist” na página 62.
        Debug Options (Opções de depuração) Defina e remova pontos de interrupção no
        script, para que, ao depurar seu documento do Flash, você possa parar e, em seguida,
        percorrer o script linha por linha. As opções de depuração agora estão disponíveis na janela
        Script e também no painel Actions, mas somente para arquivos do ActionScript. Essa
        opção está desativada para arquivos do ActionScript Communication e do Flash
        JavaScript. Para obter mais informações sobre como depurar documentos do Flash,
        consulte “Depurando scripts” na página 745. Para obter informações sobre como definir e
        remover pontos de interrupção, consulte “Definindo e removendo pontos de interrupção”
        na página 755.




                                           Sobre a codificação no painel Actions e na janela Script   41
Script Assist Somente no painel Actions. No modo Script Assist, você é solicitado a
         inserir os elementos necessários à criação de scripts. Para obter mais informações, consulte
         “Sobre o Script Assist” na página 62.
         Reference (Referência)     Exiba um tópico da Ajuda de referência para o elemento da
         linguagem ActionScript selecionado no painel Script. Por exemplo, se você clicar em uma
         instrução import e, em seguida, clicar em Reference, o tópico da Ajuda relativo à import
         será exibido no painel Help (Ajuda).
         Menu pop-up Somente no painel Actions. Contém os vários comandos e preferências que
         se aplicam ao painel Actions ou à janela Script. Por exemplo, você pode definir números
         de linha e quebra automática de linha no editor do ActionScript; acessar as preferências do
         ActionScript e importar ou exportar scripts. Para obter mais informações, consulte “Sobre
         as opções de edição do ActionScript” na página 42.


Sobre as opções de edição do ActionScript
A janela Script e o painel Actions oferecem vários recursos de assistência a código —
ferramentas que facilitam bastante a criação e a manutenção de scripts. Essas opções de
ferramenta estão disponíveis na barra de ferramentas do painel Actions ou da janela Script e
no menu pop-up do painel Actions. Durante a edição do ActionScript na janela Script, essas
opções estarão disponíveis na barra de ferramentas e no sistema de menu do Flash.
O painel Actions oferece mais opções do que as disponíveis na janela Script. Isso ocorre
porque essas opções adicionais são úteis no contexto de criação do ActionScript incorporado a
um documento do Flash — e não na criação de arquivos externos do ActionScript. Para obter
informações sobre quais dessas opções estão disponíveis na janela Script, consulte “Sobre a
janela Script” na página 38.
As opções disponíveis na janela Script e no painel Actions são discutidas em “Sobre as barras
de ferramentas do painel Actions e da janela Script” na página 40.
As opções a seguir estão disponíveis no menu pop-up do painel Actions e em diversos menus
da janela Script.
N OT A




          Algumas opções a seguir estão localizadas apenas no painel Actions. Esses recursos
          estão marcados como Somente no painel Actions.


         Reload code hints (Recarregar referências de código)       Somente no painel Actions. Se
         personalizar o modo Script Assist criando métodos personalizados, você poderá recarregar
         as referências de código sem reiniciar o Flash 8.




42         Escrevendo e editando o ActionScript 2.0
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash
Flash

Más contenido relacionado

La actualidad más candente

Apostila fireworks-cs5
Apostila fireworks-cs5Apostila fireworks-cs5
Apostila fireworks-cs5aulaemvideo
 
Apostila dreamweaver-cs5
Apostila dreamweaver-cs5Apostila dreamweaver-cs5
Apostila dreamweaver-cs5aulaemvideo
 
Python
PythonPython
PythonTiago
 
My sql
My sqlMy sql
My sqlTiago
 
Apostila Tutorial CakePHP
Apostila Tutorial CakePHPApostila Tutorial CakePHP
Apostila Tutorial CakePHPFernando Palma
 
SolidWorks 2006 modelagem avançada de montagens
SolidWorks 2006 modelagem avançada de montagensSolidWorks 2006 modelagem avançada de montagens
SolidWorks 2006 modelagem avançada de montagensAgnaldo Jardel Trennepohl
 
Caelum csharp-dotnet-fn13
Caelum csharp-dotnet-fn13Caelum csharp-dotnet-fn13
Caelum csharp-dotnet-fn13Moisés Moura
 
Caelum java-testes-jsf-web-services-design-patterns-fj22
Caelum java-testes-jsf-web-services-design-patterns-fj22Caelum java-testes-jsf-web-services-design-patterns-fj22
Caelum java-testes-jsf-web-services-design-patterns-fj22Moisés Moura
 
Windows Movie Maker
Windows Movie MakerWindows Movie Maker
Windows Movie Makerguest7d3e6f
 
Publicado ruby on-rails-rr71
Publicado ruby on-rails-rr71Publicado ruby on-rails-rr71
Publicado ruby on-rails-rr71Fernando Palma
 

La actualidad más candente (16)

Apostila fireworks-cs5
Apostila fireworks-cs5Apostila fireworks-cs5
Apostila fireworks-cs5
 
Apostila dreamweaver-cs5
Apostila dreamweaver-cs5Apostila dreamweaver-cs5
Apostila dreamweaver-cs5
 
Manual Moodle
Manual MoodleManual Moodle
Manual Moodle
 
Caelum html-css-javascript-php
Caelum html-css-javascript-phpCaelum html-css-javascript-php
Caelum html-css-javascript-php
 
Python
PythonPython
Python
 
Photoshop cs3
Photoshop cs3Photoshop cs3
Photoshop cs3
 
Apostilando mysql
Apostilando mysqlApostilando mysql
Apostilando mysql
 
My sql
My sqlMy sql
My sql
 
Apostila Coreldraw Melhor Free
Apostila Coreldraw   Melhor FreeApostila Coreldraw   Melhor Free
Apostila Coreldraw Melhor Free
 
Apostila Tutorial CakePHP
Apostila Tutorial CakePHPApostila Tutorial CakePHP
Apostila Tutorial CakePHP
 
SolidWorks 2006 modelagem avançada de montagens
SolidWorks 2006 modelagem avançada de montagensSolidWorks 2006 modelagem avançada de montagens
SolidWorks 2006 modelagem avançada de montagens
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Caelum csharp-dotnet-fn13
Caelum csharp-dotnet-fn13Caelum csharp-dotnet-fn13
Caelum csharp-dotnet-fn13
 
Caelum java-testes-jsf-web-services-design-patterns-fj22
Caelum java-testes-jsf-web-services-design-patterns-fj22Caelum java-testes-jsf-web-services-design-patterns-fj22
Caelum java-testes-jsf-web-services-design-patterns-fj22
 
Windows Movie Maker
Windows Movie MakerWindows Movie Maker
Windows Movie Maker
 
Publicado ruby on-rails-rr71
Publicado ruby on-rails-rr71Publicado ruby on-rails-rr71
Publicado ruby on-rails-rr71
 

Destacado

How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanPost Planner
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionIn a Rocket
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting PersonalKirsty Hulse
 

Destacado (6)

Teste
TesteTeste
Teste
 
Api design
Api designApi design
Api design
 
Planejamento de comunicacao
Planejamento de comunicacaoPlanejamento de comunicacao
Planejamento de comunicacao
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media Plan
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming Convention
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting Personal
 

Similar a Flash

Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaJooMarcos614503
 
História da criptografia
História da criptografiaHistória da criptografia
História da criptografiatiojoffre
 
48655010 formacao-de-suporte-tecnico-proinfo
48655010 formacao-de-suporte-tecnico-proinfo48655010 formacao-de-suporte-tecnico-proinfo
48655010 formacao-de-suporte-tecnico-proinfoWallerson Kessler Aguiar
 
formacao-de-suporte-tecnico-proinfo (1)
formacao-de-suporte-tecnico-proinfo (1)formacao-de-suporte-tecnico-proinfo (1)
formacao-de-suporte-tecnico-proinfo (1)Wagner Damico
 
Formacao de-suporte-tecnico-proinfo-esr
Formacao de-suporte-tecnico-proinfo-esrFormacao de-suporte-tecnico-proinfo-esr
Formacao de-suporte-tecnico-proinfo-esrKamerry S. Marques
 
1191535521 Curso De Html 41.01 E Introducao Ao Xhtml 1.0
1191535521 Curso De Html 41.01 E Introducao Ao Xhtml 1.01191535521 Curso De Html 41.01 E Introducao Ao Xhtml 1.0
1191535521 Curso De Html 41.01 E Introducao Ao Xhtml 1.0tiagosouselo
 
Biblia. dreamweaver.8
Biblia. dreamweaver.8Biblia. dreamweaver.8
Biblia. dreamweaver.8Edson Gracom
 
caelum-java-objetos-fj11.pdf
caelum-java-objetos-fj11.pdfcaelum-java-objetos-fj11.pdf
caelum-java-objetos-fj11.pdfssuserbc6cf7
 
Aprenda a Programar com C#
Aprenda a Programar com C#Aprenda a Programar com C#
Aprenda a Programar com C#Antonio Trigo
 
4 formacao-de-suporte-tecnico-proinfo
4 formacao-de-suporte-tecnico-proinfo4 formacao-de-suporte-tecnico-proinfo
4 formacao-de-suporte-tecnico-proinfoElizabete Bahia
 
Apostila Ruby on rails
Apostila Ruby on rails Apostila Ruby on rails
Apostila Ruby on rails Fernando Palma
 

Similar a Flash (20)

Manual dreamweaver cs4
Manual dreamweaver cs4Manual dreamweaver cs4
Manual dreamweaver cs4
 
Apostila fireworks-cs5
Apostila fireworks-cs5Apostila fireworks-cs5
Apostila fireworks-cs5
 
Samba
SambaSamba
Samba
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
Zope
ZopeZope
Zope
 
História da criptografia
História da criptografiaHistória da criptografia
História da criptografia
 
Poojava
PoojavaPoojava
Poojava
 
48655010 formacao-de-suporte-tecnico-proinfo
48655010 formacao-de-suporte-tecnico-proinfo48655010 formacao-de-suporte-tecnico-proinfo
48655010 formacao-de-suporte-tecnico-proinfo
 
formacao-de-suporte-tecnico-proinfo (1)
formacao-de-suporte-tecnico-proinfo (1)formacao-de-suporte-tecnico-proinfo (1)
formacao-de-suporte-tecnico-proinfo (1)
 
48655010 formacao-de-suporte-tecnico-proinfo
48655010 formacao-de-suporte-tecnico-proinfo48655010 formacao-de-suporte-tecnico-proinfo
48655010 formacao-de-suporte-tecnico-proinfo
 
Formacao de-suporte-tecnico-proinfo-esr
Formacao de-suporte-tecnico-proinfo-esrFormacao de-suporte-tecnico-proinfo-esr
Formacao de-suporte-tecnico-proinfo-esr
 
1191535521 Curso De Html 41.01 E Introducao Ao Xhtml 1.0
1191535521 Curso De Html 41.01 E Introducao Ao Xhtml 1.01191535521 Curso De Html 41.01 E Introducao Ao Xhtml 1.0
1191535521 Curso De Html 41.01 E Introducao Ao Xhtml 1.0
 
Biblia. dreamweaver.8
Biblia. dreamweaver.8Biblia. dreamweaver.8
Biblia. dreamweaver.8
 
caelum-java-objetos-fj11.pdf
caelum-java-objetos-fj11.pdfcaelum-java-objetos-fj11.pdf
caelum-java-objetos-fj11.pdf
 
Cake php cookbook
Cake php cookbookCake php cookbook
Cake php cookbook
 
Aprenda a Programar com C#
Aprenda a Programar com C#Aprenda a Programar com C#
Aprenda a Programar com C#
 
Introdução ao SciLab
Introdução ao SciLabIntrodução ao SciLab
Introdução ao SciLab
 
20220093 scilab-manual
20220093 scilab-manual20220093 scilab-manual
20220093 scilab-manual
 
4 formacao-de-suporte-tecnico-proinfo
4 formacao-de-suporte-tecnico-proinfo4 formacao-de-suporte-tecnico-proinfo
4 formacao-de-suporte-tecnico-proinfo
 
Apostila Ruby on rails
Apostila Ruby on rails Apostila Ruby on rails
Apostila Ruby on rails
 

Flash

  • 2. Marcas comerciais 1 Step RoboPDF, ActiveEdit, ActiveTest, Authorware, Blue Sky Software, Blue Sky, Breeze, Breezo, Captivate, Central, ColdFusion, Contribute, Database Explorer, Director, Dreamweaver, Fireworks, Flash, FlashCast, FlashHelp, Flash Lite, FlashPaper, Flash Video Encoder, Flex, Flex Builder, Fontographer, FreeHand, Generator, HomeSite, JRun, MacRecorder, Macromedia, MXML, RoboEngine, RoboHelp, RoboInfo, RoboPDF, Roundtrip, Roundtrip HTML, Shockwave, SoundEdit, Studio MX, UltraDev e WebHelp são marcas comerciais registradas ou marcas comerciais da Macromedia, Inc. e podem estar registradas nos Estados Unidos ou em outras jurisdições, inclusive internacionais. Outros nomes de produtos, logotipos, designs, títulos, palavras ou frases mencionados nesta publicação podem ser marcas comerciais, marcas de serviço ou nomes comerciais da Macromedia, Inc. ou de outras entidades e podem estar registrados em certas jurisdições, inclusive internacionais. Informações de terceiros Este guia contém links para sites da Web de terceiros que não estão sob o controle da Macromedia. Nesses casos, a Macromedia não é responsável pelo conteúdo de nenhum site vinculado. Se acessar um dos sites da Web de terceiros mencionados neste guia, você estará assumindo os riscos inerentes. A Macromedia oferece esses links apenas como uma conveniência, e a inclusão de um link não significa que a Macromedia apóia ou aceita qualquer responsabilidade pelo conteúdo apresentado nos sites de terceiros. Tecnologia de compactação e descompactação de voz licenciada da Nellymoser, Inc. (www.nellymoser.com). Tecnologia Sorenson™ Spark™ de compactação e descompactação de vídeo licenciada da Sorenson Media, Inc. Navegador Opera ® Copyright © 1995-2002 Opera Software ASA e seus fornecedores. Todos os direitos reservados. O vídeo Macromedia Flash 8 possui tecnologia de vídeo On2 TrueMotion. © 1992-2005 On2 Technologies, Inc. Todos os direitos reservados. http://www.on2.com. Visual SourceSafe é uma marca comercial ou comercial registrada da Microsoft Corporation nos Estados Unidos e/ou em outros países. Copyright © 2005 Macromedia, Inc. Todos os direitos reservados. Este manual não pode ser copiado, fotocopiado, reproduzido, traduzido ou convertido em nenhum formato eletrônico ou que possa ser lido por máquina, por inteiro ou em parte, sem o consentimento prévio por escrito da Macromedia, Inc. Não obstante o precedente, o proprietário ou usuário autorizado de uma cópia válida do software com que este manual foi fornecido pode imprimir uma cópia deste manual a partir de uma versão eletrônica com a finalidade única de ele próprio ou um usuário autorizado aprender a usar este software, desde que nenhuma parte deste manual seja impressa, reproduzida, distribuída, revendida ou transmitida para qualquer outro fim, incluindo, sem limitação, fins comerciais, como vendas de cópias desta documentação ou fornecimento de serviços de suporte pré-pagos. Agradecimentos Gerenciamento de projetos: Sheila McGinn Criação do texto: Jen deHaan; Peter deHaan, Joey Lott Editora geral: Rosana Francescato Editora chefe: Lisa Stanziano Edição: Linda Adler, Geta Carlson, Evelyn Eldridge, John Hammett, Mary Kraemer, Noreen Maher, Jessie Wood, Anne Szabla Gerenciamento de produção: Patrice O’Neill, Kristin Conradi, Yuko Yagi Projeto de mídia e produção: Adam Barnett, Aaron Begley, Paul Benkman. John Francis, Geeta Karmarkar, Masayo Noda, Paul Rangel, Arena Reed, Mario Reynoso Agradecimentos especiais a Jody Bleyle, Mary Burger, Lisa Friendly, Stephanie Gowin, Bonnie Loo, Mary Ann Walsh, Erick Vera, aos testadores beta e a toda a equipe de engenharia e controle de qualidade do Flash e do Flash Player. Primeira edição: Setembro de 2005 Macromedia, Inc. 601 Townsend St. San Francisco, CA 94103
  • 3. Conteúdo Introdução. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Público-alvo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Requisitos de sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Atualizando arquivos XML para Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Sobre a documentação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Recursos adicionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Capítulo 1: Novidades do ActionScript no Flash 8 . . . . . . . . . . . . 19 Novidades do ActionScript 2.0 e do Flash 8 . . . . . . . . . . . . . . . . . . . . . . 19 Alterações no modelo de segurança para arquivos SWF instalados localmente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Capítulo 2: Escrevendo e editando o ActionScript 2.0 . . . . . . . . 31 Sobre o ActionScript e eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Organizando o código ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Usando o painel Actions e a janela Script. . . . . . . . . . . . . . . . . . . . . . . . 36 Sobre o painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37 Sobre a janela Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Sobre a codificação no painel Actions e na janela Script . . . . . . . . . . 39 Sobre recursos do painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 Sobre comportamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 Sobre as configurações de publicação do ActionScript . . . . . . . . . . . 66 Capítulo 3: Sobre o ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . 71 O que é ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72 Sobre a opção entre o ActionScript 1.0 e o ActionScript 2.0 . . . . . . .73 Noções básicas do ActionScript e do Flash Player . . . . . . . . . . . . . . . .74 3
  • 4. Capítulo 4: Dados e tipos de dados . . . . . . . . . . . . . . . . . . . . . . . . 75 Sobre dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Sobre tipos de dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Sobre variáveis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Organizando dados em objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114 Sobre a conversão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .116 Capítulo 5: Fundamentos da sintaxe e da linguagem . . . . . . . . 119 Sobre sintaxe, instruções e expressões . . . . . . . . . . . . . . . . . . . . . . . . . 120 Sobre sintaxe de ponto e caminhos de destino . . . . . . . . . . . . . . . . . . 124 Sobre pontuadores de linguagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 Sobre constantes e palavras-chave . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 Sobre instruções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Sobre arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Sobre operadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Capítulo 6: Funções e métodos . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Sobre funções e métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Noções básicas sobre métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235 Capítulo 7: Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 Sobre a programação orientada a objeto e o Flash . . . . . . . . . . . . . 240 Criando arquivos de classes personalizados. . . . . . . . . . . . . . . . . . . . 249 Sobre como trabalhar com classes personalizadas em um aplicativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252 Exemplo: Criando classes personalizadas. . . . . . . . . . . . . . . . . . . . . . . 278 Exemplo: Usando arquivos de classes personalizados no Flash . . . 291 Atribuindo uma classe a símbolos no Flash. . . . . . . . . . . . . . . . . . . . . 295 Compilando e exportando classes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .296 Noções básicas sobre classes e escopo . . . . . . . . . . . . . . . . . . . . . . . 299 Sobre classes de nível superior e internas . . . . . . . . . . . . . . . . . . . . . . 302 Sobre como trabalhar com classes internas . . . . . . . . . . . . . . . . . . . . . 312 Capítulo 8: Herança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Sobre herança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Sobre a criação de subclasses no Flash . . . . . . . . . . . . . . . . . . . . . . . . 321 Usando o polimorfismo em um aplicativo . . . . . . . . . . . . . . . . . . . . . . . 327 4 Conteúdo
  • 5. Capítulo 9: Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 Sobre interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331 Criando interfaces como tipos de dados. . . . . . . . . . . . . . . . . . . . . . . . 337 Noções básicas sobre herança e interfaces . . . . . . . . . . . . . . . . . . . . . 339 Exemplo: Usando interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 Exemplo: Criando uma interface complexa . . . . . . . . . . . . . . . . . . . . . 342 Capítulo 10: Manipulando eventos . . . . . . . . . . . . . . . . . . . . . . . 347 Usando métodos manipuladores de eventos . . . . . . . . . . . . . . . . . . . . 348 Usando ouvintes de eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .351 Usando ouvintes de eventos com componentes . . . . . . . . . . . . . . . . 353 Usando manipuladores de eventos de botão e de clipe de filme. . . 355 Transmitindo eventos de instâncias de componentes . . . . . . . . . . . . 360 Criando clipes de filme com estados de botão . . . . . . . . . . . . . . . . . . .361 Escopo do manipulador de eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 Escopo da palavra-chave this . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 Usando a classe Delegate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 Capítulo 11: Trabalhando com clipes de filme . . . . . . . . . . . . . . 369 Sobre o controle de clipes de filme com o ActionScript . . . . . . . . . . 370 Chamando vários métodos em um único clipe de filme. . . . . . . . . . . 372 Carregando e descarregando arquivos SWF . . . . . . . . . . . . . . . . . . . 373 Alterando a posição e a aparência de um clipe de filme . . . . . . . . . . 376 Arrastando clipes de filme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 Criando clipes de filme durante a execução . . . . . . . . . . . . . . . . . . . . . 378 Adicionando parâmetros aos clipes de filme criados dinamicamente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383 Gerenciando profundidades do clipe de filme . . . . . . . . . . . . . . . . . . . 385 Sobre o armazenamento em cache e a rolagem de clipes de filme com o ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389 Usando clipes de filme como máscaras . . . . . . . . . . . . . . . . . . . . . . . . 397 Manipulando eventos de clipes de filme . . . . . . . . . . . . . . . . . . . . . . . . 399 Atribuindo uma classe a um símbolo de clipe de filme . . . . . . . . . . . . 399 Inicializando as propriedades de classe . . . . . . . . . . . . . . . . . . . . . . . . .401 Capítulo 12: Trabalhando com texto e seqüências de caracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403 Sobre campos de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405 Sobre o carregamento de texto e variáveis em campos de texto . . .415 Usando fontes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420 Sobre a renderização de fontes e texto sem serrilhado. . . . . . . . . . . 430 Conteúdo 5
  • 6. Sobre o layout e a formatação de texto . . . . . . . . . . . . . . . . . . . . . . . . 439 Formatando texto com estilos CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . .447 Usando texto em formato HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461 Exemplo: Criando texto de rolagem . . . . . . . . . . . . . . . . . . . . . . . . . . . .475 Sobre seqüências de caracteres e a classe String. . . . . . . . . . . . . . . . 477 Capítulo 13: Animação, filtros e desenhos . . . . . . . . . . . . . . . . . 497 Scripts de animação com o ActionScript 2.0 . . . . . . . . . . . . . . . . . . 498 Sobre cache de bitmap, rolagem e desempenho . . . . . . . . . . . . . . . 508 Sobre as classes Tween e TransitionManager . . . . . . . . . . . . . . . . . 509 Usando efeitos de filtro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .526 Trabalhando com filtros usando ActionScript . . . . . . . . . . . . . . . . . . .534 Manipulando efeitos de filtro com código . . . . . . . . . . . . . . . . . . . . . . .557 Criando bitmaps com a classe BitmapData . . . . . . . . . . . . . . . . . . . . . 561 Modos de mistura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .564 Sobre a ordem de operação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567 Desenhando com o ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567 Noções básicas sobre dimensionamento e guias de trecho . . . . . . .583 Capítulo 14: Criando interação com o ActionScript . . . . . . . . . 589 Sobre eventos e interação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590 Controlando a reprodução de arquivos SWF . . . . . . . . . . . . . . . . . . . 590 Criando interatividade e efeitos visuais. . . . . . . . . . . . . . . . . . . . . . . . . 593 Criando vinculações de dados durante a execução com o ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .607 Desconstruindo um script de exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . 616 Capítulo 15: Trabalhando com imagens, som e vídeo . . . . . . . . 619 Sobre o carregamento e o trabalho com mídia externa . . . . . . . . . . 620 Carregando arquivos SWF e de imagem externos . . . . . . . . . . . . . . . 621 Sobre o carregamento e o uso de arquivos MP3 externos . . . . . . . .626 Atribuindo vinculação a recursos da biblioteca. . . . . . . . . . . . . . . . . . . 631 Sobre o uso de vídeo FLV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .632 Sobre a criação de animações do progresso para arquivos de mídia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .654 6 Conteúdo
  • 7. Capítulo 16: Trabalhando com dados externos . . . . . . . . . . . . . 663 Enviando e carregando variáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664 Usando HTTP para conectar a scripts do servidor . . . . . . . . . . . . . . . 668 Sobre upload e download de arquivos . . . . . . . . . . . . . . . . . . . . . . . . . 674 Sobre XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683 Enviando mensagens para o Flash Player e a partir deste . . . . . . . . 692 Sobre a API External . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696 Capítulo 17: Noções básicas de segurança . . . . . . . . . . . . . . . . 707 Sobre compatibilidade com os modelos de segurança anteriores do Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708 Sobre segurança do arquivo local e o Flash Player . . . . . . . . . . . . . . 709 Sobre domínios, segurança entre domínios e arquivos SWF . . . . . 727 Arquivos de diretivas de servidor para autorizar o acesso a dados. 736 Acesso de protocolo HTTP para HTTPS entre arquivos SWF . . . . . 741 Capítulo 18: Depurando aplicativos . . . . . . . . . . . . . . . . . . . . . . 745 Depurando scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745 Usando o painel Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759 Capítulo 19: Melhores práticas e convenções de codificação para ActionScript 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .767 Convenções de atribuição de nome . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769 Usando de comentários no código. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 779 Convenções de codificação do ActionScript . . . . . . . . . . . . . . . . . . . . 782 Otimização do ActionScript e do Flash Player . . . . . . . . . . . . . . . . . . 798 Formatando a sintaxe do ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . 799 Apêndice A: Mensagens de erro . . . . . . . . . . . . . . . . . . . . . . . . . 809 Apêndice B: Operadores Flash 4 obsoletos . . . . . . . . . . . . . . . . 815 Apêndice C: Teclas do teclado e valores de códigos de teclas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817 Apêndice D: Criando scripts para versões anteriores do Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825 Sobre a especificação de versões anteriores do Flash Player . . . . 825 Usando o Flash 8 para criar conteúdo para o Flash Player 4 . . . . . 826 Conteúdo 7
  • 8. Apêndice E: Programação orientada a objeto com o ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829 Sobre o ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830 Criando um objeto personalizado no ActionScript 1.0 . . . . . . . . . . . . 831 Atribuindo métodos a um objeto personalizado no ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .832 Definindo métodos manipuladores de eventos no ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .834 Criando herança no ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . .836 Adicionando propriedades getter/setter a objetos no ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837 Usando as propriedades do objeto Function no ActionScript 1.0 . .838 Apêndice F: Terminologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841 Índice. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851 8 Conteúdo
  • 9. Introdução O Macromedia Flash Basic 8 e o Macromedia Flash Professional 8 são as ferramentas de criação padrão profissionais para a produção de experiências de grande impacto na Web. O ActionScript é a linguagem utilizada para adicionar interatividade aos aplicativos Flash, sejam os aplicativos arquivos SWF animados simples ou aplicativos de Internet avançados mais complexos. Para usar o Flash, não é necessário o ActionScript, mas, se você desejar fornecer interatividade básica ou complexa com o usuário, trabalhar com objetos diferentes daqueles contidos no Flash (como botões e clipes de filme) ou então transformar um arquivo SWF em uma experiência de usuário mais eficiente, deverá usar o ActionScript. Para obter mais informações, consulte os tópicos a seguir: Público-alvo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Atualizando arquivos XML para Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Requisitos de sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Sobre a documentação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Recursos adicionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Público-alvo Este manual pressupõe que você já tenha instalado o Flash Basic 8 ou o Flash Professional 8 e saiba como usar a interface de usuário.É preciso que saiba posicionar objetos no Stage e manipulá-los no ambiente de criação do Flash. Se já tiver usado uma linguagem de criação, o ActionScript lhe parecerá familiar. No entanto, se for iniciante em programação, saiba que os fundamentos do ActionScript são fáceis de aprender. Você pode começar com comandos simples e criar mais complexidade com o tempo. Pode adicionar muita interatividade aos seus arquivos sem precisar aprender (ou escrever) muito código. Requisitos de sistema O ActionScript 2.0 não tem qualquer requisito de sistema além do Flash 8 . 9
  • 10. Este manual pressupõe que você esteja utilizando as configurações de publicação padrão para os arquivos do Flash: Flash Player 8 e ActionScript 2.0. Se você alterar qualquer uma dessas configurações, as explicações e exemplos de código apresentados na documentação poderão não funcionar corretamente. Caso desenvolva aplicativos para versões anteriores do Flash Player, consulte o Apêndice D, “Criando scripts para versões anteriores do Flash Player”, na página 825. Atualizando arquivos XML para Flash É importante que estejam sempre instalados os arquivos XML para Flash mais recentes. A Macromedia algumas vezes apresenta recursos em versões com ponto (versões menores) do Flash Player. Quando uma versão dessas se encontrar disponível, atualize sua versão do Flash para obter os arquivos XML mais recentes. Caso contrário, o compilador do Flash 8 poderá gerar erros caso você use novas propriedades ou métodos indisponíveis na versão do Flash Player que veio com a instalação do Flash. Por exemplo, o Flash Player 7 (7.0.19.0) continha um novo método para o objeto System , System.security.loadPolicyFile. Para acessar esse método, use o instalador Player Updater (Atualizador de player) para atualizar todos os players instalados com o Flash. Caso contrário, o compilador do Flash exibirá erros. Lembre-se de que é possível instalar um Player Updater que seja de uma ou mais versões maiores mais recentes que a sua do Flash. Fazendo isso, obterá os arquivos XML necessários, mas não deverá receber mensagens de erro do compilador quando publicar versões mais antigas do Flash Player. Algumas vezes, novos métodos ou propriedades encontram-se disponíveis para versões mais antigas, e ter os arquivos XML mais recentes minimiza os erros de compilação quando você tenta acessar métodos ou propriedades mais antigos. Sobre a documentação Este manual oferece uma visão geral da sintaxe do ActionScript e informações sobre como usá- lo quando trabalhar com diferentes tipos de objetos. Para obter detalhes sobre a sintaxe e o uso de cada elemento da linguagem, consulte o ActionScript 2.0 Language Reference. Para obter mais informações, consulte os seguintes tópicos: ■ “Visão geral do manual Aprendendo ActionScript 2.0” na página 11 ■ “Sobre os arquivos de exemplo” na página 15 ■ “Termos usados neste documento” na página 13 ■ “Copiar e colar código” na página 13 10 Introdução
  • 11. Visão geral do manual Aprendendo ActionScript 2.0 A lista a seguir resume o conteúdo deste manual: ■ O Capítulo 1, “Novidades do ActionScript no Flash 8,” descreve recursos que são novos no ActionScript, alterações no compilador e no depurador e o novo modelo de programação para a linguagem ActionScript 2.0. ■ O Capítulo 2, “Escrevendo e editando o ActionScript 2.0,” descreve recursos do editor do ActionScript dentro do Flash que facilitam a escrita de código. ■ O Capítulo 3, “Sobre o ActionScript,” descreve o que é a linguagem ActionScript e detalha como escolher qual versão utilizar. ■ O Capítulo 4, “Dados e tipos de dados,” descreve a terminologia e os conceitos básicos sobre dados, tipos de dados e variáveis. Esses conceitos serão usados em todo o manual. ■ O Capítulo 5, “Fundamentos da sintaxe e da linguagem,” descreve a terminologia e os conceitos básicos da linguagem ActionScript. Esses conceitos serão usados em todo o manual. ■ O Capítulo 6, “Funções e métodos,” descreve como escrever diferentes tipos de funções e métodos e como usá-los no seu aplicativo. ■ O Capítulo 7, “Classes,” descreve como criar classes e objetos personalizados no ActionScript. Esse capítulo também lista as classes internas do ActionScript e oferece uma visão geral de como utilizá-las para acessar recursos avançados do ActionScript. ■ O Capítulo 8, “Herança,” descreve a herança na linguagem ActionScript e como estender classes internas ou personalizadas. ■ O Capítulo 9, “Interfaces,” descreve como criar interfaces e trabalhar com elas no ActionScript. ■ O Capítulo 10, “Manipulando eventos,” descreve várias formas de manipular eventos: métodos manipuladores de eventos, ouvintes de eventos e manipuladores de eventos de botão e de clipe de filme. ■ O Capítulo 11, “Trabalhando com clipes de filme,” descreve clipes de filme e o AcionScript que você pode usar para crontrolá-los. ■ O Capítulo 12, “Trabalhando com texto e seqüências de caracteres,” descreve os diferentes modos como você pode controlar o texto e as seqüências de caracteres no Flash e inclui informações sobre formatação de texto e o FlashType (renderização de texto avançada, como texto sem serrilhado). ■ O Capítulo 13, “Animação, filtros e desenhos,” descreve como criar animação e imagens baseadas em código, adicionar filtros a objetos e desenhar usando o ActionScript. Sobre a documentação 11
  • 12. O Capítulo 14, “Criando interação com o ActionScript,” descreve alguns modos simples de criar aplicativos mais interativos, incluindo o controle quando os arquivos SWF são executados e a criação de ponteiros personalizados e de controles de som. ■ O Capítulo 15, “Trabalhando com imagens, som e vídeo,” descreve como importar arquivos de mídia externos, como imagens de bitmap, arquivos MP3, arquivos Flash Video (FLV) e outros arquivos SWF, nos aplicativos Flash. Esse capítulo também oferece uma visão geral de como trabalhar com o vídeo nos aplicativos e como criar animações para o carregamento da barra de progresso. ■ O Capítulo 16, “Trabalhando com dados externos,” descreve como processar dados de fontes externas usando scripts de servidor ou de cliente nos aplicativos. Esse capítulo descreve como integrar os dados com os aplicativos. ■ O Capítulo 17, “Noções básicas de segurança,” explica a segurança no Flash Player, na medida em que se relaciona com o trabalho com arquivos SWF localmente no disco rígido. Esse capítulo também explica questões de segurança entre domínios e como carregar dados de servidores ou através de domínios. ■ O Capítulo 18, “Depurando aplicativos,” descreve o depurador do ActionScript dentro do Flash, que facilita a escrita de aplicativos. ■ O Capítulo 19, “Melhores práticas e convenções de codificação para ActionScript 2.0,” explica as melhores práticas para usar o Flash e para escrever o ActionScript. Esse capítulo também lista convenções de codificação padronizadas, como variáveis de atribuição de nome e outras convenções. ■ O Apêndice A, “Mensagens de erro,” lista as mensagens de erro que o compilador do Flash pode gerar. ■ O Apêndice B, “Operadores Flash 4 obsoletos,” lista todos os operadores obsoletos do Flash 4 e sua associatividade. ■ O Apêndice C, “Teclas do teclado e valores de códigos de teclas,” lista todas as teclas de um teclado padrão e os valores de códigos de teclas ASCII correspondentes usados para identificar as teclas no ActionScript. ■ O Apêndice D, “Criando scripts para versões anteriores do Flash Player,” fornece diretrizes para ajudá-lo a criar scripts sintaticamente corretos para a versão do Flash Player desejada. ■ O Apêndice E, “Programação orientada a objeto com o ActionScript 1.0,” fornece informações sobre o uso do modelo de objeto ActionScript 1.0 para escrver scripts. ■ O Apêndice F, “Terminologia,” lista a terminologia comumente usada ao trabalhar com a linguagem ActionScript e fornece descrições para os termos. Este manual explica como usar a linguagem ActionScript. Para obter informações sobre os elementos de linguagem propriamente ditos, consulte o ActionScript 2.0 Language Reference. 12 Introdução
  • 13. Convenções tipográficas Este manual usa as seguintes convenções tipográficas: ■ Fonte Code indica código do ActionScript. ■ Fonte Code negrito, normalmente em um procedimento, indica código que você precisa modificar ou adicionar a um código já adicionado ao arquivo FLA. Em alguns casos, pode ser usado para realçar o código a ser observado. ■ Texto em negrito indica dados que você precisa digitar na interface de usuário, como nome de arquivo ou nome de instância. ■ Texto em itálico indica um novo termo definido no texto que se segue. Em um caminho de arquivo, pode indicar um valor que deve ser substituído (por exemplo, por um nome de diretório no seu próprio disco rígido). Termos usados neste documento Os seguintes termos são usados neste manual: ■ Você refere-se ao desenvolvedor que escreve um script ou aplicativo. ■ O usuário refere-se à pessoa que executará os scripts e aplicativos. ■ Tempo de compilação é o momento em que você publica, exporta, testa ou depura o documento. ■ Tempo de execução é o momento em que o script é executado no Flash Player. Termos do ActionScript como método e objeto são definidos no Apêndice F, “Terminologia”, na página 841. Copiar e colar código Quando você colar o ActionScript do painel Help (Ajuda) para o FLA ou o arquivo do ActionScript, preste atenção aos caracteres especiais. São caracteres especiais as aspas especiais (também chamadas de aspas curvas ou aspas inglesas). Esses caracteres não são interpretados pelo editor do ActionScript, então o código lança um erro quando você tenta compilá-lo no Flash. Sobre a documentação 13
  • 14. Você pode identificar se os caracteres de aspas são especiais quando eles não são codificados por cores de forma correta. Ou seja, se nenhuma seqüência de caracteres mudar de cor no editor de cores, será preciso substituir os caracteres especiais por caracteres de aspas retas comuns. Se você digitar um caractere de aspa simples ou dupla diretamente no editor do ActionScript, sempre digitará um caractere de aspa reta. O compilador (quando você testa ou publica um arquivo SWF) lança um erro e permite que você saiba que há um tipo errado (marcas de aspas especiais ou curvas) de caracteres no seu código. N OT A Você também pode encontrar aspas especiais se colar o ActionScript de outros locais, como de uma página da Web ou um documento do Microsoft Word. Cuidado com quebras de linha ao copiar e colar código. Ao colar o seu código de alguns locais, a linha de código poderá se quebrar em um local inapropriado. Certifique-se de que a codificação de cores da sua sintaxe esteja correta no editor do ActionScript se achar que as quebras de linha representam um problema. Compare o código do painel Actions (Ações) com o do painel Help para ver se correspondem. Procure ativar o Word Wrap (quebra automática de linha) no editor do ActionScript para ajudar a solucionar quebras de linha excedentes no código (selecione View (Exibir) > Word Wrap (quebra automática de linha) na janela Script ou Word Wrap no menu pop-up do painel Actions.) Recursos adicionais Além deste manual sobre o ActionScript, existem outros sobre outros tópicos do Flash, como componentes e o Macromedia Flash Lite. Você pode acessar cada manual no painel Help (Help > Flash Help (Ajuda do Flash)), exibindo o sumário padrão. Clique no botão Clear (Limpar) para ver os manuais disponíveis; para obter mais informações, consulte “Onde encontrar documentação sobre outros assuntos” na página 17. Para obter mais informações sobre outros recursos disponíveis, consulte os seguintes tópicos: ■ “Sobre os arquivos de exemplo” na página 15 ■ “Onde encontrar arquivos PDF ou documentação impressa” na página 15 ■ “Sobre o LiveDocs” na página 16 ■ “Recursos on-line adicionais” na página 17 ■ “Onde encontrar documentação sobre outros assuntos” na página 17 14 Introdução
  • 15. Sobre os arquivos de exemplo Há vários arquivos de exemplo baseados no ActionScript que são instalados com o Flash. Esses arquivos de exemplo mostram como o código funciona em um arquivo FLA; geralmente servem como uma ferramenta de aprendizado bem útil. Os capítulos deste manual muitas vezes fazem referência a esses arquivos, mas recomendamos que você consulte também a pasta de arquivos de exemplo do seu disco rígido. Os arquivos de exemplo incluem arquivos FLA de aplicativo que usam funções comuns do Flash instaladas com ele. Esses aplicativos foram projetados para apresentar aos novos desenvolvedores do Flash as capacidades dos aplicativos Flash assim como para mostrar aos desenvolvedores avançados como funcionam os recursos do Flash no contexto. Você pode encontrar os arquivos de origem de exemplo com foco no ActionScript na pasta Samples (Exemplos) do disco rígido. ■ No Windows, navegue até a unidade de inicializaçãoProgram FilesMacromediaFlash 8Samples and TutorialsSamplesActionScript. ■ No Macintosh, navegue até Macintosh HD/Applications/Macromedia Flash 8/Samples and Tutorials/Samples/ActionScript/. Você verá como são úteis os seguintes arquivos de exemplo com foco em componentes, pois eles contêm vários códigos ActionScript. Eles também podem ser encontrados na pasta Samples do disco rígido: ■ No Windows, navegue até a unidade de inicializaçãoProgram FilesMacromediaFlash 8Samples and TutorialsSamplesComponents. ■ No Macintosh, navegue até Macintosh HD/Applications/Macromedia Flash 8/Samples and Tutorials/Samples/Components/. Você também pode encontrar arquivos de exemplo adicionais para download na Internet. A página da Web a seguir contém links e descrições de arquivos de exemplo adicionais: www.macromedia.com/go/flash_samples/. Onde encontrar arquivos PDF ou documentação impressa Caso prefira ler a documentação em formato impresso, as versões PDF de cada manual encontram-se disponíveis para download. Vá até www.macromedia.com/support/ documentation/ e selecione o produto em que está interessado. Você pode exibir ou fazer o download do PDF ou acessar o link da versão LiveDocs do manual. Recursos adicionais 15
  • 16. Muitas vezes você também pode adquirir a documentação impressa. Para obter informações atualizadas, vá até o site de suporte da documentação e selecione Flash Basic 8 ou Flash Professional 8. Sobre o LiveDocs Você pode acessar a documentação no site LiveDocs ou pelo painel Help. O site LiveDocs contém todas as páginas de ajuda do Flash e pode conter comentários que esclareçam, atualizem ou corrijam partes da documentação. Clique em View Comments (Exibir comentários) em LiveDocs na parte inferior de uma página do painel Help para exibir a página equivalente no site LiveDocs. Vá até http://livedocs.macromedia.com para ver uma lista de toda a documentação disponível no formato LiveDocs. Escritores técnicos monitoram o site LiveDocs. Uma das vantagens do LiveDocs é ver comentários que esclarecem a documentação ou corrigir erros ou problemas que surgem após o lançamento de um software. Não é no LiveDocs que você faz solicitações de ajuda, como perguntas sobre seu código que não funciona, comentários sobre problemas com software ou instalação ou perguntas sobre como criar algo com o Flash. Nele você fornece informações sobre a documentação (por exemplo, você aponta uma frase ou parágrafo que requer esclarecimento). Quando você clica no botão para adicionar um comentário sobre o LiveDocs, há diversos pontos sobre os tipos de comentários que são aceitáveis no sistema. Leia essas diretrizes atentamente para que seu comentário não seja removido do site. Se tiver alguma dúvida sobr eo Flash, faça sua pergunta nos fóruns da Web da Macromedia: www.macromedia.com/support/forums/. Os fóruns da Web são o melhor local para fazer perguntas, pois há vários funcionários da Macromedia lá, voluntários da equipe Macromedia, gerentes e membros de grupos de usuário da Macromedia e até escritores técnicos que monitoram esses fóruns. Engenheiros não monitoram o sistema LiveDocs, mas a lista de tarefas do Flash. Se achar que encontrou um erro (bug) no software ou se quiser solicitar um aprimoramento para o Flash, preencha o formulário em www.macromedia.com/go/wish. Se você relatar o bug ou a solicitação de aprimoramento no LiveDocs, eles não serão adicionados de forma oficial ao banco de dados de bugs. Use o formulário apropriado se quiser que um engenheiro dê atenção ao bug reportado ou à sua solicitação. Lembre-se de dar atenção aos caracteres especiais e às quebras de linha quando colar da Web, incluindo do LiveDocs. A Macromedia vem se esforçando para remover todos os caracteres especiais dos exemplos de código, mas, se você tiver dificuldades para colar o código, consulte “Copiar e colar código” na página 13. 16 Introdução
  • 17. Recursos on-line adicionais Existem vários recursos on-line que oferecem várias instruções, ajuda e orientação para facilitar o uso do Macromedia Flash 8. Consulte com freqüência os seguintes sites para obter atualizações: O site The Macromedia Developer Center (www.macromedia.com/devnet) é atualizado regularmente com as informações mais recentes sobre o Flash, além de oferecer aconselhamentos de usuários experientes, tópicos avançados, exemplos, dicas, tutoriais (incluindo tutoriais com várias partes) e outras atualizações. Visite com freqüência o site da Web para saber das últimas novidades sobre o Flash e como obter o máximo do programa. O site The Macromedia Flash Support Center (www.macromedia.com/support/flash) fornece TechNotes (Notas Técnicas), atualizações de documentação e links para recursos adicionais na comunidade Flash. O site The Macromedia Weblogs (http://weblogs.macromedia.com) fornece uma lista dos weblogs (também chamados de blogs) de funcionários e da comunidade Macromedia . Os fóruns da Web da Macromedia (http://webforums.macromedia.com) oferecem vários fóruns para perguntas específicas sobre o Flash, seus aplicativos ou a linguagem ActionScript. Os fóruns são monitorados por voluntários da equipe Macromedia e muitas vezes são visitados por funcionários de lá também. Se não souber a quem recorrer ou como resolver um problema, comece por um fórum do Flash. O site The Macromedia Community (www.macromedia.com/community) hospeda regularmente Macrochats, uma série de apresentações ao vivo sobre uma variedade de tópicos feitas por funcionários ou membros da comunidade Macromedia. Consulte regulamente o site à procura de atualizações e para registrar-se nos Macrochats. Onde encontrar documentação sobre outros assuntos Os manuais a seguir oferecem informações adicionais sobre assuntos comumente associados ao ActionScript 2.0: ■ Para obter informações sobre os elementos que compõem a linguagem ActionScript, consulte o ActionScript 2.0 Language Reference. ■ Para obter informações sobre como trabalhar no ambiente de criação do Flash, consulte o How to Use Help (Como usar a Ajuda). ■ Para obter informações sobre como trabalhar com componentes, consulte o Using Components (Usando componentes). Recursos adicionais 17
  • 18. 18 Introdução
  • 19. CAPÍTULO 1 Novidades do ActionScript no Flash 8 1 O Macromedia Flash Basic 8 e o Macromedia Flash Professional 8 oferecem vários aprimoramentos que facilitam a criação de scripts mais eficientes com uso da linguagem ActionScript. Os novos recursos, analisados neste capítulo, incluem novos elementos de linguagem (consulte “Acréscimos à linguagem ActionScript” na página 22), ferramentas de edição aprimoradas (consulte “Alterações de edição do ActionScript” na página 28), alterações no modelo de segurança e outros aprimoramentos do ActionScript relacionados à ferramenta de criação. Para obter mais informações, consulte os seguintes tópicos: Novidades do ActionScript 2.0 e do Flash 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Alterações no modelo de segurança para arquivos SWF instalados localmente . 29 Novidades do ActionScript 2.0 e do Flash 8 A linguagem ActionScript cresceu e desenvolveu-se desde sua introdução, há vários anos. Com cada nova versão do Flash, mais palavras-chave, objetos, métodos e outros elementos foram adicionados à linguagem. Existem também aprimoramentos do ActionScript relacionados aos ambientes de criação do Flash 8. O Flash Basic 8 e o Flash Professional 8 introduzem vários novos elementos de linguagem para recursos expressivos, como filtros e modos de mistura, além do desenvolvimento de aplicativos, como integração do JavaScript (ExternalInterface) e entrada e saída de arquivo (FileReference e FileReferenceList). Esta seção fornece uma visão geral dos elementos e classes da linguagem ActionScript que são novos ou foram alterados no Flash 8 e aprimoramentos do ActionScript relacionados à ferramenta de criação. Para obter uma lista de adições específicas ao ActionScript 2.0, consulte “Acréscimos à linguagem ActionScript” na página 22. Para usar qualquer dos novos elementos da linguagem nos seus scripts, tenha em mente o Flash Player 8 (o padrão) quando publicar seus documentos. 19
  • 20. Os recursos a seguir foram adicionados ao Flash Basic 8 e ao Flash Professional 8 (a menos que explicitado de forma diferente): ■ Os aprimoramentos do editor do ActionScript permitem a exibição de caracteres ocultos nos scripts. Para obter mais informações, consulte “Exibindo caracteres ocultos” na página 57. ■ As opções de depuração agora encontram-se disponíveis na janela Script, assim como no painel Actions, para arquivos do ActionScript. ■ O diretório Configuration que inclui arquivos XML e arquivos de classes está reorganizado. Para obter detalhes, consulte “Arquivos de configuração instalados com o Flash 8” na página 69. ■ É possível definir uma preferência para recarregar arquivos de script modificados ao trabalhar em um aplicativo, o que ajuda a evitar o trabalho com versões mais antigas de arquivos de script e a substituição de arquivos de script mais novos. Para obter mais informações, consulte “Sobre as preferências do ActionScript” na página 44. ■ O recurso da janela Script encontra-se disponível no Flash Basic 8 e no Flash Professional 8. Isso significa que você pode criar um arquivo do ActionScript nos dois programas. ■ O Script Assist (Assistência de script), semelhante ao Normal Mode (Modo Normal) em edições anteriores do Flash, ajuda você a codificar sem que precise ter noções de sintaxe. Para obter mais informações sobre o Script Assist, consulte “Sobre o Script Assist” na página 62. ■ É possível carregar novos tipos de arquivos de imagem durante a execução, o que inclui imagens JPEG progressivas e arquivos GIF e PNG não-animados. Se você carregar um arquivo animado, o primeiro quadro da animação será exibido. ■ É possível atribuir identificadores de vinculação a arquivos de bitmap e de som armazenados na biblioteca (Library), o que significa que você pode anexar imagens ao Stage ou trabalhar com esses recursos em bibliotecas compartilhadas. ■ O cache de bitmap permite o aumento do desempenho dos aplicativos durante a execução por meio do cache de uma representação de bitmap de suas instâncias. Você pode usar o ActionScript para acessar essa propriedade. Para obter mais informações, consulte “Sobre cache de bitmap, rolagem e desempenho” na página 508. 20 Novidades do ActionScript no Flash 8
  • 21. O dimensionamento em 9 trechos permite o dimensionamento de instâncias de clipe de filme sem expansão dos traços que contornam o clipe de filme. Você pode usar o código ActionScript para acessar esse recurso no Flash Basic 8 e no Flash Professional 8 ou na ferramenta de criação do Flash 8. Para obter mais informações, consulte “Trabalhando com dimensionamento de 9 trechos no ActionScript” na página 585. Para obter informações sobre como acessar o dimensionamento em 9 trechos na ferramenta de criação, consulte “Sobre dimensionamento em 9 trechos e símbolos de clipe de filme” na página 91 em Usando o Flash. ■ Agora você pode adicionar informações de metadados para os arquivos FLA na caixa de diálogo Publish Settings (Configurações de publicação). Pode adicionar um nome e uma descrição ao arquivo FLA usando a caixa de diálogo para ajudar a aumentar a visibilidade da pesquisa on-line. ■ O painel Strings (Seqüências de caracteres) está aprimorado e agora inclui suporte multilinha no campo String e um arquivo de linguagem XML. Para obter mais informações, consulte “Sobre o painel Strings” na página 479. ■ Um novo coletor de lixo faz parte do Flash Player, que usa um coletor incremental para melhorar o desempenho. ■ O fluxo de trabalho para a criação de aplicativos acessíveis está aprimorado. No Flash Player 8 não há mais necessidade de os desenvolvedores adicionarem todos os objetos ao índice de tabulação para que o conteúdo seja lido corretamente por um leitor de tela. Para obter mais informações sobre o índice de tabulação, consulte tabIndex (Button.tabIndex property), tabIndex (MovieClip.tabIndex property) e tabIndex (TextField.tabIndex property) em ActionScript 2.0 Language Reference. ■ O Flash Player aumentou a segurança dos arquivos locais; agora há mais segurança quando os arquivos SWF são executados no disco rígido. Para obter informações sobre segurança de arquivos locais, consulte “Sobre segurança do arquivo local e o Flash Player” na página 709. ■ Usando o código ActionScript, você pode usar a API Drawing (API de desenho) para controlar o estilo de linhas dos traços desenhados. Para obter informações sobre novos estilos de linha, consulte “Usando estilos de linha” na página 574. ■ Usando o código ActionScript, você poderá usar a API Drawing para criar gradientes mais complexos com os quais preencherá as formas. Para obter informações sobre preenchimentos de gradiente, consulte “Usando preenchimentos de gradiente complexos” na página 573. ■ Você pode usar o código ActionScript para aplicar muitos filtros a objetos no Stage (como instâncias de clipe de filme). Para obter informações sobre filtros e o ActionScript, consulte “Trabalhando com filtros usando ActionScript” na página 534. Novidades do ActionScript 2.0 e do Flash 8 21
  • 22. Para fazer o upload dos arquivos para um servidor, use as APIs FileReference e FileReferenceList. Para obter mais informações, consulte “Sobre upload e download de arquivos” na página 674. ■ Você pode usar o código ActionScript para acessar meios novos e avançados de aplicar e manipular cores. Para obter mais informações, consulte “Definindo valores de cores” na página 599 e ColorTransform (flash.geom.ColorTransform) em ActionScript 2.0 Language Reference. ■ Foram feitos diversos aprimoramentos no texto, incluindo novas opções, propriedades e parâmetros nas classes TextField e TextFormat. Para obter mais informações, consulte TextField e TextFormat em ActionScript 2.0 Language Reference. ■ Para acessar os recursos avançados de eliminação de serrilhado (FlashType), use o código ActionScript. Para obter mais informações, consulte “Sobre a renderização de fontes e texto sem serrilhado” na página 430. ■ Quando testar o aplicativo, você poderá excluir os arquivos ASO. Selecione Control (Controlar) > Delete ASO files (Excluir arquivos ASO) ou Control > Delete ASO files e Test Movie (Testar filme) na ferramenta de criação. Para obter informações, consulte “Usando arquivos ASO” na página 298. Para obter uma lista de classes, elementos de linguagem, métodos e propriedades específicas adicionadas ao ActionScript 2.0 no Flash 8, consulte “Acréscimos à linguagem ActionScript” na página 22. Acréscimos à linguagem ActionScript Esta seção lista acréscimos aos elementos e classes da linguagem ActionScript novos ou alterados no Flash 8. As classes e os elementos de linguagem a seguir são novos acréscimos ao Flash Player 8 ou passaram a ter suporte recentemente nesse programa. As classes a seguir foram adicionadas ao ActionScript 2.0 no Flash 8: ■ A classe BevelFilter (do pacote flash.filters) permite a adição de efeitos de chanfro a objetos. ■ A classe BitmapData (do pacote flash.display) permite a criação e a manipulação de imagens de bitmap transparentes ou opacas dimensionadas arbitrariamente. ■ A classe BitmapFilter (do pacote flash.display) é uma classe base para efeitos de filtro. ■ A classe BlurFilter permite a aplicação de embaçamentos a objetos no Flash. ■ A classe ColorMatrixFilter (do pacote flash.filters) permite a aplicação de transformações a cores ARGB e valores alfa. ■ A classe ColorTransform (do pacote flash.geom) permite o ajuste de valores de cores em clipes de filme. A classe Color é obsoleta em relação a esta classe. 22 Novidades do ActionScript no Flash 8
  • 23. A classe ConvolutionFilter (do pacote flash.filters) permite a aplicação de efeitos de filtro de torção de matriz. ■ A classe DisplacementMapFilter (do pacote flash.filters) permite o uso de valores em pixels de um objeto BitmapData para o deslocamento de um objeto. ■ A classe DropShadowFilter (do pacote flash.filters) permite a adição de sombreamentos a objetos. ■ A classe ExternalInterface (do pacote flash.external) permite que você se comunique usando o ActionScript com o recipiente do Flash Player (o sistema que contém o aplicativo Flash, como um navegador com JavaScript, ou o aplicativo desktop). ■ A classe FileReference (do pacote flash.net ) permite o upload e o download de arquivos entre o computador do usuário e um servidor. ■ A classe FileReferenceList (do pacote flash.net) permite a seleção de um ou mais arquivos para upload. ■ A classe GlowFilter (do pacote flash.filters) permite a adição de efeitos de brilho a objetos. ■ A classe GradientBevelFilter (do pacote flash.filters) permite a adição de chanfros gradientes a objetos. ■ A classe GradientGlowFilter (do pacote flash.filters) permite a adição de efeitos de brilho gradiente a objetos. ■ A classe IME (da classe System) permite a manipulação do IME (Input Method Editor, Editor de método de entrada) do sistema operacional no Flash Player. ■ A classe Locale (do pacote mx.lang) permite o controle do modo de exibição de texto multilíngüe em um arquivo SWF. ■ A classe Matrix (do pacote flash.geom) representa uma matriz de transformação que determina como mapear pontos de um espaço de coordenada para o outro. ■ O objeto Point (do pacote flash.geom) representa um local em um sistema de coordenadas bidimensional, onde x representa o eixo horizontal e y representa o eixo vertical. ■ A classe Rectangle (do pacote flash.geom) permite a criação e a modificação de objetos Rectangle. ■ A classe TextRenderer (do pacote flash.text) oferece funcionalidade para fontes incorporadas sem serrilhado. ■ A classe Transform (do pacote flash.geom) coleta dados sobre transformações de cores e manipulações de coordenadas aplicadas a uma instância MovieClip. N O TA No Flash 8 foi adicionado suporte oficial para a classe AsBroadcaster. Novidades do ActionScript 2.0 e do Flash 8 23
  • 24. Os novos elementos, métodos e funções da linguagem adicionados a classes existentes no ActionScript incluem: ■ A função global showRedrawRegions permite que o player do depurador indique as regiões da tela que estão sendo redesenhadas (ou seja, regiões problemáticas que estão sendo atualizadas). A função faz o player mostrar o que foi redesenhado, mas não permite que você controle as regiões de redesenho. ■ A propriedade blendMode da classe Button, que define o modo de mistura para a instância do botão. ■ A propriedade cacheAsBitmap da classe Button, que permite o cache do objeto como representação interna de bitmap da instância. ■ A propriedade filters da classe Button, que é um array indexado que contém cada objeto filtro associado ao botão. ■ A propriedade scale9Grid da classe Button, que é a região retangular que define nove regiões de dimensionamento para a instância. ■ A propriedade hasIME da classe System.capabilities, que indica se o sistema possui um IME instalado. ■ A propriedade getUTCYear da classe Date, que retorna o ano dessa data, de acordo com a hora universal. ■ A constante ALT da classe Key. ■ O método isAccessible() da classe Key retorna um valor booleano que indica se a última tecla pressionada pode ser acessada por outros arquivos SWF, dependendo das restrições de segurança. ■ O manipulador de eventos onHTTPStatus da classe LoadVars retorna o código de status retornado do servidor (por exemplo, o valor 404 para página não encontrada). Para obter mais informações, consulte onHTTPStatus (LoadVars.onHTTPStatus handler) em ActionScript 2.0 Language Reference. ■ O método attachBitmap() da classe MovieClip, que anexa uma imagem de bitmap a um clipe de filme. Para obter mais informações, consulte BitmapData (flash.display.BitmapData) em ActionScript 2.0 Language Reference. ■ O método beginBitmapFill() da classe MovieClip, que preenche um clipe de filme com uma imagem de bitmap. ■ Os parâmetros spreadMethod, interpolationMethod e focalPointRatio do método beginGradientFill() da classe MovieClip. Esse método preenche uma área de desenho com uma imagem de bitmap, e o bitmap pode ser repetido ou colocado lado a lado para preencher a área. 24 Novidades do ActionScript no Flash 8
  • 25. A propriedade blendMode da classe MovieClip, que permite a definição do modo de mistura para a instância. ■ A propriedade cacheAsBitmap da classe MovieClip, que permite o cache do objeto como uma representação interna de bitmap da instância. ■ A propriedade filters da classe MovieClip, que é um array indexado que contém cada objeto filtro associado no momento à instância. ■ O método getRect() da classe MovieClip, que retorna propriedades que são os valores de coordenada mínimo e máximo da instância especificada. ■ O método lineGradientStyle() da classe MovieClip, que especifica um estilo de linha gradiente que o Flash usa quando desenha um caminho. ■ Os parâmetros pixelHinting, noScale, capsStyle, jointStyle e miterLimit do método lineStyle() da classe MovieClip. Esses parâmetros especificam tipos de estilos de linha que você pode usar ao desenhar linhas. ■ A propriedade opaqueBackground da classe MovieClip, que define a cor de fundo opaca (não transparente) do clipe de filme como a cor que o valor hexadecimal RGB especifica. ■ A propriedade scale9Grid da classe MovieClip, que é a região retangular que define nove regiões de dimensionamento para a instância. ■ A propriedade scrollRect da classe MovieClip, que permite que você role rapidamente o conteúdo do clipe de filme e que a janela exiba um conteúdo maior. ■ A propriedade transform da classe MovieClip, que permite configurações em relação aos limites de matriz, transformação de cores e pixels de um clipe de filme. Para obter mais informações, consulte Transform (flash.geom.Transform) em ActionScript 2.0 Language Reference. ■ O parâmetro status da classe MovieClipLoader. O manipulador de eventos onLoadComplete retorna o código de status retornado do servidor (por exemplo, o valor 404 para página não encontrada). Para obter mais informações, consulte onLoadComplete (MovieClipLoader.onLoadComplete event listener) em ActionScript 2.0 Language Reference. ■ O manipulador de eventos onLoadError da classe MovieClipLoader é chamado quando um arquivo carregado com MovieClipLoader.loadClip() não pode ser carregado. ■ O parâmetro secure do método SharedObject.getLocal() determina se o acesso a esse objeto compartilhado se restringe a arquivos SWF transmitidos por uma conexão HTTPS. Para obter mais informações, consulte getLocal (SharedObject.getLocal method) em ActionScript 2.0 Language Reference. ■ A constante ID3 da classe Sound. Novidades do ActionScript 2.0 e do Flash 8 25
  • 26. A propriedade sandboxType da classe System.security indica o tipo de sandbox de segurança em que o arquivo SWF de chamada está operando. Para obter mais informações, consulte sandboxType (security.sandboxType property) em ActionScript 2.0 Language Reference. ■ O método parse() da classe TextField.StyleSheet. ■ A propriedade antiAliasType da classe TextField, que define o tipo de eliminação de serrilhado utilizada na instância TextField. ■ A propriedade filters da classe TextField, que é um array indexado que contém cada objeto filtro associado no momento à instância TextField. ■ A propriedade gridFitType da classe TextField, que define o tipo de ajuste à grade usado na instância. Para obter informações sobre ajuste à grade e TextField.gridFitType, consulte gridFitType (TextField.gridFitType property) em ActionScript 2.0 Language Reference. ■ A propriedade sharpness da classe TextField, que estabelece a definição das bordas de glifo para a instância TextField. Se usar essa propriedade, terá de definir o método antiAliasType() como avançado. ■ A propriedade thickness da classe TextField, que define a espessura das bordas de glifo na instância TextField. Se usar essa propriedade, terá de definir o método antiAliasType() como avançado. ■ O valor justify da propriedade align da classe TextFormat, que permite a justificação de um parágrafo específico. ■ A propriedade indent da classe TextFormat, que permite o uso de valores negativos. ■ A propriedade kerning da classe TextFormat, que permite a ativação ou desativação do kerning para o objeto TextFormat. ■ A propriedade leading da classe TextFormat, que permite o uso de entrelinhamento negativo, ou seja, que o espaço entre as linhas seja inferior à altura do texto. Isso permite que você coloque linhas de texto juntas nos aplicativos. ■ A propriedade letterSpacing da classe TextFormat, que permite a especificação da quantidade de espaço distribuída uniformemente entre os caracteres. ■ A propriedade _alpha da classe Video, que é a quantidade especificada de transparência para o objeto vídeo. ■ A propriedade _height da classe Video, que indica a altura da instância do vídeo. ■ A propriedade _name da classe Video, que indica o nome de instância do vídeo. ■ A propriedade _parent da classe Video, que indica a instância ou objeto de clipe de vídeo que contém a instância do vídeo. 26 Novidades do ActionScript no Flash 8
  • 27. A propriedade _rotation da classe Video, que permite a definição do valor de rotação da instância do vídeo em graus. ■ A propriedade _visible da classe Video, que permite a definição da visibilidade de uma instância de vídeo. ■ A propriedade _width da classe Video, que permite a definição da largura da instância do vídeo. ■ A propriedade _x da classe Video, que permite a definição da coordenada x da instância do vídeo. ■ A propriedade _xmouse da classe Video, que permite a definição da coordenada x da posição do ponteiro do mouse. ■ A propriedade _xscale da classe Video, que permite a definição do percentual de dimensionamento horizontal da instância do vídeo. ■ A propriedade _y da classe Video, que permite a definição da coordenada y da instância do vídeo. ■ A propriedade _ymouse da classe Video, quer permite a definição da coordenada y da posição do ponteiro do mouse. ■ A propriedade _yscale da classe Video, que permite a definição do percentual de dimensionamento vertical da instância do vídeo. ■ O manipulador de eventos onHTTPStatus da classe XML retorna o código de status retornado do servidor (por exemplo, o valor 404 para página não encontrada). Para obter mais informações, consulte onHTTPStatus (XML.onHTTPStatus handler) em ActionScript 2.0 Language Reference. ■ A propriedade localName da classe XMLNode, que retorna o nome completo do objeto nó XML (incluindo o prefixo e o nome local). ■ A propriedade namespaceURI da classe XMLNode, que lê o URI do namespace para o qual o prefixo do nó XML resolve. Para obter mais informações, consulte namespaceURI (XMLNode.namespaceURI property) em ActionScript 2.0 Language Reference. ■ A propriedade prefix da classe XMLNode, que lê o prefixo do nome do nó. ■ O método getNamespaceForPrefix() da classe XMLNode, que retorna o URI do namespace associado ao prefixo especificado para o nó. ■ O método getPrefixForNamespace da classe XMLNode, que retorna o prefixo associado a um URI de namespace especificado para o nó. Novidades do ActionScript 2.0 e do Flash 8 27
  • 28. Sobre elementos de linguagem obsoletos Alguns elementos de linguagem estão obsoletos no Flash Player 8. Para obter uma lista dos elementos de linguagem obsoletos e alternativas para uso no Flash Player 8, consulte as seções a seguir do ActionScript 2.0 Language Reference: ■ Deprecated Class summary ■ Deprecated Function summary ■ Deprecated Property summary ■ Deprecated Operator summary Alterações de edição do ActionScript O editor do ActionScript no painel Actions e na janela Script foi atualizado de várias maneiras para ficar mais eficiente e fácil de usar do que nas versões anteriores da ferramenta. Essas alterações são resumidas nesta seção. View hidden characters (Exibir caracteres ocultos) Agora você pode usar o menu pop-up Options (Opções) dos painéis Script, Debugger (Depurador) e Output (Saída) para exibir ou ocultar caracteres quando escrever arquivos de script no painel Actions ou na janela Script. Para obter informações sobre esse recurso, consulte “Exibindo caracteres ocultos” na página 57. Script assist added to Actions panel (Script assist adicionado ao painel Actions) Nas versões anteriores do Flash, você podia trabalhar no painel Actions tanto no modo normal, em que você preenchia opções e parâmetros para criar código, quanto no modo especialista, em que você adicionava comandos diretamente ao painel Script. Essas opções não estavam disponíveis no Flash MX 2004 e no Flash MX Professional 2004. No entanto, no Flash Basic 8 e no Flash Professional 8, você pode trabalhar no modo Script Assist, que é semelhante ao modo normal e muito mais eficiente que ele. Para obter informações sobre o modo Script Assist, consulte Capítulo 13, “Criando ActionScript com o Script Assist” em Usando o Flash. Para ver um tutorial sobre o Script Assist, consulte o Capítulo 13, “Criando um evento startDrag/stopDrag com o Script Assist” do manual Usando o Flash. 28 Novidades do ActionScript no Flash 8
  • 29. Reload modified files (Recarregar arquivos modificados) Você pode recarregar os arquivos de script modificados quando trabalhar em um aplicativo. É exibida uma mensagem de aviso, solicitando o recarregamento dos arquivos de script modificados associados ao aplicativo em que você está trabalhando. Esse recurso é especialmente vantajoso para equipes que trabalham simultaneamente em aplicativos. Ele ajuda a evitar o trabalho com scripts desatualizados ou que versões mais recentes de um script acabem sendo substituídas. Se um arquivo de script tiver sido movido ou excluído, uma mensagem de aviso será exibida e solicitará o salvamento dos arquivos conforme necessário. Para obter mais informações, consulte “Sobre as preferências do ActionScript” na página 44. Alterações no modelo de segurança para arquivos SWF instalados localmente O Flash Player 8 possui um modelo de segurança novo e aperfeiçoado por meio do qual os aplicativos Flash e os arquivos SWF de um computador local podem se comunicar com a Internet e o sistema de arquivos local, em vez de serem executados de um servidor remoto da Web. Ao desenvolver um aplicativo Flash, você precisa indicar se um arquivo SWF pode se comunicar com uma rede ou com um sistema de arquivos local. N OT A Nesta descrição, um arquivo SWF local é um arquivo SWF instalado localmente no computador de um usuário (e não disponibilizado a partir de um site) e não inclui arquivos de projetor (EXE). Nas versões anteriores do Flash Player, os arquivos SWF locais podiam interagir com outros arquivos SWF e carregar dados de qualquer computador remoto ou local sem configurar definições de segurança. No Flash Player 8, um arquivo SWF não pode fazer conexões com o sistema de arquivos local e a rede (como a Internet) no mesmo aplicativo sem fazer uma configuração de segurança. Isso é para sua segurança. Dessa forma, um arquivo SWF não pode ler arquivos no seu disco rígido e depois enviar o conteúdo deles pela Internet. A restrição de segurança afeta todo o conteúdo implantado localmente, seja um conteúdo herdado (um arquivo FLA criado em uma versão anterior do Flash) ou criado no Flash 8. Usando o Flash MX 2004 ou uma ferramenta de criação anterior, você pode testar um aplicativo Flash que seja executado localmente e também acesse a Internet. No Flash Player 8, esse aplicativo agora solicita permissão ao usuário para se comunicar com a Internet. Alterações no modelo de segurança para arquivos SWF instalados localmente 29
  • 30. Quando você testa um arquivo no disco rígido, são necessárias várias etapas para determinar se ele é um documento local confiável (seguro) ou um documento potencialmente não-confiável (sem segurança). Se você criar o arquivo no ambiente de criação do Flash (por exemplo, quando selecionar Control > Test Movie), seu arquivo será considerado confiável, pois ele se encontra no ambiente de teste. No Flash Player 7 e anteriores, os arquivos SWF locais tinham permissões para acessar o sistema de arquivos local e a rede. No Flash Player 8, os arquivos SWF locais podem ter três níveis de permissão: ■ Access the local file system only (Acessar somente o sistema de arquivos local), o nível padrão. O arquivo SWF local pode ser lido no sistema de arquivos local e em caminhos de rede de convenção universal de atribuição de nomes (UNC, Universal Naming Convention) e não pode se comunicar com a Internet. ■ Access the network only (Acessar somente a rede). O arquivo SWF local pode acessar somente a rede (como a Internet) e não o sistema de arquivos local onde o arquivo SWF está instalado. ■ Access to both the local file system and the network (Acessar o sistemas de arquivos local e a rede). O arquivo SWF local pode ser lido no sistema de arquivos local onde o arquivo está instalado, pode ser lido em qualquer servidor que lhe conceda permissão (e gravar nele) e pode criar vários scripts para outros arquivos SWF na rede ou no sistema de arquivos local que lhe conceda permissão. Para obter mais detalhes sobre cada nível de permissão, consulte “Sobre segurança do arquivo local e o Flash Player” na página 709. Há também pequenas alterações em System.security.allowDomain e aprimoramentos em System.security.allowInsecureDomain. Para obter mais informações sobre segurança de arquivos locais, consulte o Capítulo 17, “Noções básicas de segurança.” 30 Novidades do ActionScript no Flash 8
  • 31. CAPÍTULO 2 Escrevendo e editando o ActionScript 2.0 2 Ao escrever o código ActionScript no Macromedia Flash Basic 8 ou no Macromedia Flash Professional 8, use o painel Actions (Ações) ou a janela Script. O painel Actions e a janela Script contêm um editor de código completo (o editor do ActionScript) que inclui referências de código e sinalização por cores, formatação de código, realce de sintaxe, verificação de sintaxe, depuração, números de linha, quebra automática de linha e suporte a Unicode em duas exibições diferentes. Para obter mais informações sobre o editor do ActionScript, consulte “Usando o painel Actions e a janela Script” na página 36. Use um dos dois métodos para escrever o código ActionScript no Flash. Você pode criar scripts que façam parte de seu documento do Flash (ou seja, scripts incorporados ao arquivo FLA) ou criar scripts externos (scripts ou classes armazenadas em arquivos externos). Não é possível usar o painel Actions para criar scripts externos. Use o editor do ActionScript no painel Actions ao criar scripts em um arquivo FLA. O painel Actions contém o editor do ActionScript em um painel Script e ferramentas de suporte para facilitar a criação de scripts. Essas ferramentas incluem a caixa de ferramentas Actions (Ações) que oferece um acesso rápido aos elementos básicos da linguagem ActionScript; o navegador Script que ajuda na navegação por todos os scripts do documento; e o modo Script Assist (Assistência de script) que solicita os elementos necessários para a criação de scripts. Para obter mais informações sobre o painel Actions, consulte “Sobre o painel Actions” na página 37. Para obter mais informações sobre o Script Assist, consulte “Sobre o Script Assist” na página 62. Quando precisar criar um script externo, use o editor do ActionScript na janela Script para criar um novo arquivo do ActionScript. (Você também pode usar o seu editor de texto favorito para criar um arquivo externo do AS.) Na janela Script, o editor do Action Script inclui recursos de assistência a código, como referências de código e sinalização por cores, verificação de sintaxe etc., da mesma forma que no painel Actions. Para obter mais informações sobre a janela Script, consulte “Sobre a janela Script” na página 38. 31
  • 32. O Flash oferece assistência adicional a scripts através de comportamentos. Os comportamentos são funções predefinidas do ActionScript que você pode anexar a objetos no documento do Flash sem precisar criar o código ActionScript. Para obter mais informações sobre comportamentos, consulte “Sobre comportamentos” na página 65. Para obter mais informações sobre como manipular eventos, consulte as seguintes seções: Sobre o ActionScript e eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Organizando o código ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Usando o painel Actions e a janela Script. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Sobre o painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Sobre a janela Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Sobre a codificação no painel Actions e na janela Script . . . . . . . . . . . . . . . . . . . . . . 39 Sobre recursos do painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 Sobre comportamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 Sobre as configurações de publicação do ActionScript . . . . . . . . . . . . . . . . . . . . . . . 66 Sobre o ActionScript e eventos No Macromedia Flash Basic 8 e no Macromedia Flash Professional 8, o código ActionScript é executado quando ocorre um evento: por exemplo, quando um clipe de filme é carregado, quando um quadro-chave é inserido na timeline ou quando o usuário clica em um botão. Os eventos podem ser ativados pelo usuário ou pelo sistema. Os usuários clicam em botões do mouse e pressionam teclas; o sistema ativa eventos quando condições específicas são atendidas ou quando processos são concluídos (o arquivo SWF é carregado, a timeline alcança um determinado quadro, um elemento gráfico conclui o download etc.). Quando ocorre um evento, você cria um manipulador de eventos para responder ao evento com uma ação. Compreender quando e onde ocorrerão os eventos o ajudará a determinar como e onde você responderá a eles com uma ação e quais ferramentas do ActionScript utilizará em cada caso. Para obter mais informações, consulte “Sobre a criação de scripts para manipular eventos” na página 35. Os eventos podem ser agrupados em várias categorias: eventos de mouse e teclado, que ocorrem quando o usuário interage com seu aplicativo Flash através do mouse e do teclado; eventos de clipe, que ocorrem em clipes de filme; e eventos de quadro, que ocorrem em quadros na timeline. Para obter informações sobre os tipos de scripts que podem ser criados para manipular eventos, consulte “Sobre a criação de scripts para manipular eventos” na página 35. 32 Escrevendo e editando o ActionScript 2.0
  • 33. Eventos de mouse e teclado Quando o usuário interage com seu aplicativo ou arquivo SWF, ele ativa eventos de mouse e teclado. Por exemplo, quando ele rola sobre um botão, ocorre o evento Button.onRollOver ou on(rollOver); quando ele clica em um botão, o evento Button.onRelease é ativado; se uma tecla do teclado for pressionada, o evento on(keyPress) ocorrerá. Você pode criar um código em um quadro ou anexar scripts a uma instância para manipular esses eventos e adicionar toda a interatividade desejada. Eventos de clipe Em um clipe de filme, você pode reagir a diversos eventos de clipe ativados quando o usuário entra ou sai da cena ou interagir com a cena usando o mouse ou o teclado. Por exemplo, você pode carregar uma imagem externa SWF ou JPG no clipe de filme quando o usuário entrar na cena ou permitir que os movimentos do mouse do usuário reposicionem elementos na cena. Eventos de quadro Em uma timeline principal ou de clipe de filme, um evento de sistema ocorre quando a reprodução entra em um quadro-chave — conhecido como evento de quadro. Os eventos de quadro são úteis para ativar ações baseadas na passagem de tempo (que se movem pela timeline) ou para interagir com elementos visíveis no momento no Stage. Quando você adiciona um script a um quadro-chave, ele é executado quando o quadro-chave é alcançado durante uma reprodução. Os script anexados a um quadro são chamados scripts de quadro. Uma das utilizações mais comuns dos scripts de quadro é interromper a reprodução quando um determinado quadro-chave é alcançado. Isso é feito com a função stop(). Selecione um quadro-chave e adicione a função stop() como um elemento de script no painel Actions. Ao interromper arquivo SWF em um quadro-chave específico, você precisará executar uma ação. Você pode, por exemplo, usar um script de quadro para atualizar dinamicamente o valor de um rótulo, gerenciar a interação dos elementos no Stage etc. Sobre o ActionScript e eventos 33
  • 34. Organizando o código ActionScript É possível anexar scripts a quadros-chave e instâncias de objeto (clipes de filme, botões e outros símbolos). Entretanto, se o seu código ActionScript for distribuído por vários quadros- chave e instâncias de objeto, a depuração de seu aplicativo ficará muito mais difícil. Também será difícil compartilhar o código com diferentes aplicativos Flash. Portanto, é importante que você siga as práticas recomendadas de codificação ao criar o ActionScript no Flash. Em vez de anexar scripts aos elementos, como quadros-chave, clipes de filme e botões, responda aos eventos chamando as funções residentes em um local central. Um dos métodos consiste em anexar o ActionScript incorporado ao primeiro ou ao segundo quadro da timeline, sempre que possível, para que você não precise pesquisar o arquivo FLA a fim de localizar todo o código. Uma prática comum envolve a criação de uma camada denominada actions e a inclusão do código ActionScript nessa camada. Ao anexar todos os scripts a elementos individuais, você incorpora todo o código ao arquivo FLA. Se o compartilhamento de seu código com outros aplicativos do Flash for um requisito importante para você, use a janela Script ou o seu editor de texto favorito para criar um arquivo externo do ActionScript (AS). A criação de um arquivo externo torna o seu código mais modular e bem organizado. À medida que seu projeto for se desenvolvendo, essa conveniência terá cada vez mais utilidade do que você imagina. Um arquivo externo ajudará na depuração e também no gerenciamento do controle de origem caso você esteja trabalhando em um projeto junto com outros desenvolvedores. Para usar o código ActionScript contido em um arquivo externo do AS, crie um script no arquivo FLA e use a instrução #include para acessar o código armazenado externamente, como mostrado no exemplo a seguir: #include "../core/Functions.as" 34 Escrevendo e editando o ActionScript 2.0
  • 35. Também é possível usar o ActionScript 2.0 para criar classes personalizadas. Armazene as classes personalizadas em arquivos externos do AS e use instruções import em um script para exportar as classes para o arquivo SWF, em vez de usar instruções #include. Para obter mais informações sobre como criar arquivos de classe, consulte “Criando arquivos de classes personalizados” na página 249 e “Sobre a importação de arquivos de classes” na página 254 que tratam da importação desses arquivos. Você também pode usar componentes (clipes de filme predefinidos) para compartilhar código e funcionalidade, como scripts e elementos de UI. NO T A O código do ActionScript em arquivos externos é compilado em um arquivo SWF quando você publica, exporta, testa ou depura um arquivo FLA. Portanto, se você fizer qualquer alteração em um arquivo externo, será preciso salvá-lo e recompilar os arquivos FLA que o utilizam. Ao criar o ActionScript no Flash 8, use o painel Actions, a janela Script ou ambos. O uso do painel Actions ou da janela Script é determinado pelo modo de resposta aos eventos, pelo modo de organização do código e, principalmente, pelas práticas recomendadas de codificação. Para obter mais informações sobre convenções e práticas recomendadas de codificação, consulte “Convenções de codificação do ActionScript” na página 782. Outros problemas relacionados a fluxo de trabalho e organização de código deverão ser considerados quando você usar comportamentos, que são funções predefinidas do ActionScript (consulte “Sobre comportamentos” na página 65). Sobre a criação de scripts para manipular eventos A criação de código para eventos pode ser categorizada em dois grupos principais: eventos que ocorrem na timeline (em quadros-chave) e eventos que ocorrem em instâncias de objeto (clipes de filme, botões e componentes). A interatividade de seu aplicativo ou arquivo SWF pode ser distribuída pelos vários elementos de seu projeto; você também pode optar por adicionar scripts diretamente a esses elementos. Entretanto, a Macromedia recomenda a não adição direta de scripts a esses elementos (quadros-chave e objetos). Nesse caso, você deve responder aos eventos chamando as funções residentes em um local central, conforme descrito em “Organizando o código ActionScript”. Organizando o código ActionScript 35
  • 36. Usando o painel Actions e a janela Script Para criar scripts em um arquivo FLA, insira o ActionScript diretamente no painel Actions. Para criar scripts externos a serem incluídos ou importados para o seu aplicativo, você pode usar a janela Script (File [Arquivo] > New [Novo] e selecionar ActionScript File [Arquivo do ActionScript]) ou o seu editor de texto preferido. A utilização do painel Actions ou da janela Script equivale ao uso dos recursos do editor do ActionScript para criar, formatar e editar o código. O painel Actions e a janela Script possuem o painel Script (onde o código é digitado) e a caixa de ferramentas Actions. O painel Actions oferece mais alguns recursos de assistência a código do que a janela Script. O Flash oferece esses recursos no painel Actions por eles serem especialmente úteis no contexto de edição do ActionScript em um arquivo FLA. Para exibir o painel Actions, siga um destes procedimentos: ■ Selecione Window (Janela) > Actions (Ações). ■ Pressione F9. Para exibir a janela Script, siga um destes procedimentos: ■ Para começar a escrever um novo script, selecione File (Arquivo) > New (Novo) e ActionScript File (Arquivo do ActionScript). ■ Para abrir um script existente, selecione File > Open (Abrir) e abra um arquivo do AS. ■ Para editar um script já aberto, clique na guia do documento que exibe o nome do script. Para obter mais informações, consulte os tópicos a seguir: ■ “Sobre o painel Actions” na página 37 ■ “Sobre a janela Script” na página 38 36 Escrevendo e editando o ActionScript 2.0
  • 37. Sobre o painel Actions Use o painel Actions para criar o ActionScript em um documento do Flash (arquivo FLA). O painel consiste em três painéis, e cada um deles oferece suporte à criação e ao gerenciamento de scripts. Actions (Ações), caixa de ferramentas Navegador Script Script, painel Menu pop-up Caixa de ferramentas Actions Use esta caixa de ferramentas para pesquisar uma lista categórica de elementos da linguagem ActionScript (funções, classes, tipos etc.) e, em seguida, insira-os no painel Script. Para inserir um elemento de script no painel Script, clique duas vezes nele ou arraste-o diretamente para esse painel. Você também pode adicionar elementos de linguagem aos scripts usando o botão Add (+) (Adicionar) localizado na barra de ferramentas do painel Actions. Para obter mais informações, consulte “Sobre as barras de ferramentas do painel Actions e da janela Script” na página 40. Navegador Script Exibe uma lista hierárquica de elementos do Flash (clipes de filme, quadros e botões) contendo scripts. Use o navegador Script para se mover rapidamente entre todos os scripts do documento do Flash. Se você clicar em um item no navegador Script, o script associado a esse item aparecerá no painel Script e a reprodução passará para essa posição na timeline. Se você clicar duas vezes em um item do navegador Script, o script ficará preso (travado no lugar). Para obter mais informações, consulte “Prendendo scripts no painel Actions” na página 63. Sobre o painel Actions 37
  • 38. Painel Script No painel Script, você digita seu código. O painel fornece ferramentas para a criação de scripts em um editor completo (o editor do ActionScript) que inclui verificação e formatação de sintaxe, referências de código, sinalização por cores, depuração e outros recursos que simplificam a criação. Para obter mais informações, consulte “Usando o painel Actions e a janela Script” na página 36. Para obter informações sobre cada botão da barra de ferramentas do painel Actions, consulte “Sobre a codificação no painel Actions e na janela Script” na página 39. Para obter mais informações sobre os recursos do painel Actions, consulte os seguintes tópicos: ■ “Sobre as barras de ferramentas do painel Actions e da janela Script” na página 40 ■ “Sobre as opções de edição do ActionScript” na página 42 ■ “Sobre as referências de código no Flash” na página 47 ■ “Formatando código” na página 53 ■ “Usando o realce de sintaxe” na página 54 ■ “Usando números de linha e quebra automática de linha” na página 55 ■ “Usando teclas de atalho de Escape” na página 56 ■ “Exibindo caracteres ocultos” na página 57 ■ “Usando a ferramenta Find” na página 58 ■ “Verificando sintaxe e pontuação” na página 59 ■ “Importando e exportando scripts” na página 60 Sobre a janela Script Você pode criar e editar o ActionScript na janela Script ao criar um novo arquivo do ActionScript, do Flash Communication ou do Flash JavaScript. Use a janela Script para criar e editar arquivos de script externos. A janela oferece suporte à sinalização da sintaxe por cores, a referências de código e a outras opções de editor. Nessa janela, é possível criar um ActionScript externo, a comunicação do ActionScript e arquivos do Flash JavaScript. Dependendo do tipo de arquivo de script externo criado, a caixa de ferramentas Actions fornecerá uma lista completa dos elementos de linguagem disponíveis para cada um deles. Ao usar a janela Script, você perceberá que alguns dos outros recursos de assistência a código, como o navegador Script, o modo Script Assist e os comportamentos, não estarão disponíveis. Isso ocorre porque esses recursos são úteis apenas no contexto de criação de um documento do Flash, e não de criação de um arquivo de script externo. 38 Escrevendo e editando o ActionScript 2.0
  • 39. Você também observará que várias opções disponíveis no painel Actions não estão disponíveis na janela Script. A janela Script oferece suporte às seguintes opções de editor: caixa de ferramentas Actions, recursos localizar e substituir, verificação de sintaxe, formatação automática, referências de código e opções de depuração (somente arquivos do ActionScript). Além disso, ela oferece suporte à exibição de números de linha, caracteres ocultos e quebra automática de linha. Para exibir a janela Script: 1. Selecione File (Arquivo) > New (Novo). 2. Selecione o tipo de arquivo externo que deseja criar (arquivo do ActionScript, arquivo do Flash Communication ou arquivo do Flash JavaScript). É possível abrir vários arquivos externos ao mesmo tempo; os nomes dos arquivos são exibidos em guias na parte superior da janela Script. Para obter mais informações sobre os recursos da janela Script, consulte os seguintes tópicos: ■ “Sobre as barras de ferramentas do painel Actions e da janela Script” na página 40 ■ “Sobre as opções de edição do ActionScript” na página 42 ■ “Sobre as referências de código no Flash” na página 47 ■ “Formatando código” na página 53 ■ “Usando o realce de sintaxe” na página 54 ■ “Usando números de linha e quebra automática de linha” na página 55 ■ “Usando teclas de atalho de Escape” na página 56 ■ “Exibindo caracteres ocultos” na página 57 ■ “Usando a ferramenta Find” na página 58 ■ “Verificando sintaxe e pontuação” na página 59 ■ “Importando e exportando scripts” na página 60 Sobre a codificação no painel Actions e na janela Script O painel Script, local de edição do código, é o principal elemento do painel Actions e da janela Script. O painel Actions e a janela Script oferecem recursos básicos de assistência a código e de edição de script, como referências de código, sinalização por cores, formatação automática etc. Os recursos que ajudam na edição do código podem ser acessados na barra de ferramentas do painel Actions ou da janela Script, através do sistema de menu e no próprio painel Script. Sobre a codificação no painel Actions e na janela Script 39
  • 40. Os tópicos a seguir apresentam os vários recursos do editor do ActionScript (painel Actions e janela Script): ■ “Sobre as barras de ferramentas do painel Actions e da janela Script” na página 40 ■ “Sobre as opções de edição do ActionScript” na página 42 ■ “Sobre as preferências do ActionScript” na página 44 ■ “Sobre as referências de código no Flash” na página 47 ■ “Formatando código” na página 53 ■ “Usando o realce de sintaxe” na página 54 ■ “Usando números de linha e quebra automática de linha” na página 55 ■ “Usando teclas de atalho de Escape” na página 56 ■ “Exibindo caracteres ocultos” na página 57 ■ “Usando a ferramenta Find” na página 58 ■ “Verificando sintaxe e pontuação” na página 59 ■ “Importando e exportando scripts” na página 60 Para obter os recursos específicos apenas do painel Actions, por exemplo, prender o script e navegador Script, consulte “Sobre recursos do painel Actions” na página 62. Sobre as barras de ferramentas do painel Actions e da janela Script As barras de ferramentas do painel Actions e da janela Script contêm links para os recursos de assistência a código que ajudam a simplificar e agilizar a codificação no ActionScript. Elas serão diferentes caso você utilize o editor do ActionScript no painel Actions ou no painel Script. A imagem a seguir exibe os recursos localizados na barra de ferramentas do painel Actions. As opções marcadas estão disponíveis apenas no painel Actions. Add a new item to the script (Adicionar um novo item ao script) Menu pop-up* Find (Localizar) Debug Options (Opções de depuração)* Insert target path (Inserir caminho de destino)* Script Assist * Show Code Hint (Mostrar referência de código) Referência Auto Format (Formatação automática) Check Syntax (Verificar sintaxe) * Somente no painel Actions 40 Escrevendo e editando o ActionScript 2.0
  • 41. Os recursos localizados na barra de ferramentas serão discutidos em detalhes em “Usando o painel Actions e a janela Script” na página 36. Veja a seguir um breve resumo dos botões disponíveis nas barras de ferramentas do painel Actions e da janela Script. NO TA Algumas opções a seguir estão localizadas apenas no painel Actions. Esses recursos estão marcados como Somente no painel Actions. Add a new item to the script (Adicionar um novo item ao script) Exiba todos os elementos de linguagem também existentes na caixa de ferramentas do ActionScript. A seleção de um item na lista categorizada de elementos de linguagem adiciona-o ao script. Find (Localizar) Localize e substitua qualquer texto no código ActionScript. Para obter mais informações, consulte “Usando a ferramenta Find” na página 58. Insert target path (Inserir caminho de destino) Somente no painel Actions. Ajuda na configuração de um caminho de destino relativo ou absoluto de uma ação no script. Para obter mais informações, consulte “Inserindo caminhos de destino” na página 65. Check Syntax (Verificar sintaxe) Verifique erros na sintaxe do script atual. Os erros de sintaxe são listados no painel Output (Saída). Para obter mais informações, consulte “Verificando sintaxe e pontuação” na página 59. Auto Format (Formatação automática) Formate seu script para uma sintaxe de codificação apropriada e para melhorar a legibilidade. Você pode definir as preferências de formatação automática na caixa de diálogo Preferences (Preferências), disponível no menu Edit (Editar) ou no menu pop-up do painel Actions. Para obter mais informações, consulte “Formatando código” na página 53. Show Code Hint (Mostrar referência de código) Se tiver desativado a referência de código automática, você poderá usar o comando Show Code Hint para exibir manualmente uma referência de código relativa à linha de código na qual estiver trabalhando. Para obter mais informações, consulte “Sobre o Script Assist” na página 62. Debug Options (Opções de depuração) Defina e remova pontos de interrupção no script, para que, ao depurar seu documento do Flash, você possa parar e, em seguida, percorrer o script linha por linha. As opções de depuração agora estão disponíveis na janela Script e também no painel Actions, mas somente para arquivos do ActionScript. Essa opção está desativada para arquivos do ActionScript Communication e do Flash JavaScript. Para obter mais informações sobre como depurar documentos do Flash, consulte “Depurando scripts” na página 745. Para obter informações sobre como definir e remover pontos de interrupção, consulte “Definindo e removendo pontos de interrupção” na página 755. Sobre a codificação no painel Actions e na janela Script 41
  • 42. Script Assist Somente no painel Actions. No modo Script Assist, você é solicitado a inserir os elementos necessários à criação de scripts. Para obter mais informações, consulte “Sobre o Script Assist” na página 62. Reference (Referência) Exiba um tópico da Ajuda de referência para o elemento da linguagem ActionScript selecionado no painel Script. Por exemplo, se você clicar em uma instrução import e, em seguida, clicar em Reference, o tópico da Ajuda relativo à import será exibido no painel Help (Ajuda). Menu pop-up Somente no painel Actions. Contém os vários comandos e preferências que se aplicam ao painel Actions ou à janela Script. Por exemplo, você pode definir números de linha e quebra automática de linha no editor do ActionScript; acessar as preferências do ActionScript e importar ou exportar scripts. Para obter mais informações, consulte “Sobre as opções de edição do ActionScript” na página 42. Sobre as opções de edição do ActionScript A janela Script e o painel Actions oferecem vários recursos de assistência a código — ferramentas que facilitam bastante a criação e a manutenção de scripts. Essas opções de ferramenta estão disponíveis na barra de ferramentas do painel Actions ou da janela Script e no menu pop-up do painel Actions. Durante a edição do ActionScript na janela Script, essas opções estarão disponíveis na barra de ferramentas e no sistema de menu do Flash. O painel Actions oferece mais opções do que as disponíveis na janela Script. Isso ocorre porque essas opções adicionais são úteis no contexto de criação do ActionScript incorporado a um documento do Flash — e não na criação de arquivos externos do ActionScript. Para obter informações sobre quais dessas opções estão disponíveis na janela Script, consulte “Sobre a janela Script” na página 38. As opções disponíveis na janela Script e no painel Actions são discutidas em “Sobre as barras de ferramentas do painel Actions e da janela Script” na página 40. As opções a seguir estão disponíveis no menu pop-up do painel Actions e em diversos menus da janela Script. N OT A Algumas opções a seguir estão localizadas apenas no painel Actions. Esses recursos estão marcados como Somente no painel Actions. Reload code hints (Recarregar referências de código) Somente no painel Actions. Se personalizar o modo Script Assist criando métodos personalizados, você poderá recarregar as referências de código sem reiniciar o Flash 8. 42 Escrevendo e editando o ActionScript 2.0