Aprendendo Action Script 2.0

15.171 visualizações

Publicada em

Publicada em: Tecnologia, Negócios
  • Seja o primeiro a comentar

Aprendendo Action Script 2.0

  1. 1. Aprendendo ActionScript 2.0 no Flash
  2. 2. Marcas comerciais1 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 estarregistradas 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 daMacromedia, Inc. ou de outras entidades e podem estar registrados em certas jurisdições, inclusive internacionais.Informações de terceirosEste guia contém links para sites da Web de terceiros que não estão sob o controle da Macromedia. Nesses casos, a Macromedianã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 umlink 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 osdireitos reservados.O vídeo Macromedia Flash 8 possui tecnologia de vídeo On2 TrueMotion. © 1992-2005 On2 Technologies, Inc. Todos osdireitos reservados. http://www.on2.com.Visual SourceSafe é uma marca comercial ou comercial registrada da Microsoft Corporation nos Estados Unidos e/ou em outrospaí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 ouem parte, sem o consentimento prévio por escrito da Macromedia, Inc. Não obstante o precedente, o proprietário ouusuário autorizado de uma cópia válida do software com que este manual foi fornecido pode imprimir uma cópia destemanual a partir de uma versão eletrônica com a finalidade única de ele próprio ou um usuário autorizado aprender a usareste software, desde que nenhuma parte deste manual seja impressa, reproduzida, distribuída, revendida ou transmitidapara qualquer outro fim, incluindo, sem limitação, fins comerciais, como vendas de cópias desta documentação oufornecimento de serviços de suporte pré-pagos.AgradecimentosGerenciamento de projetos: Sheila McGinnCriação do texto: Jen deHaan; Peter deHaan, Joey LottEditora geral: Rosana FrancescatoEditora chefe: Lisa StanzianoEdição: Linda Adler, Geta Carlson, Evelyn Eldridge, John Hammett, Mary Kraemer, Noreen Maher, Jessie Wood, Anne SzablaGerenciamento de produção: Patrice O’Neill, Kristin Conradi, Yuko YagiProjeto de mídia e produção: Adam Barnett, Aaron Begley, Paul Benkman. John Francis, Geeta Karmarkar, Masayo Noda,Paul Rangel, Arena Reed, Mario ReynosoAgradecimentos 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 2005Macromedia, Inc.601 Townsend St.San Francisco, CA 94103
  3. 3. ConteúdoIntrodução. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Público-alvo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Requisitos de sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Atualizando arquivos XML para Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Sobre a documentação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Recursos adicionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Capítulo 1: Novidades do ActionScript no Flash 8 . . . . . . . . . . . . 19Novidades do ActionScript 2.0 e do Flash 8 . . . . . . . . . . . . . . . . . . . . . . 19Alterações no modelo de segurança para arquivos SWF instaladoslocalmente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Capítulo 2: Escrevendo e editando o ActionScript 2.0 . . . . . . . . 31Sobre o ActionScript e eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32Organizando o código ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34Usando o painel Actions e a janela Script. . . . . . . . . . . . . . . . . . . . . . . . 36Sobre o painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37Sobre a janela Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38Sobre a codificação no painel Actions e na janela Script . . . . . . . . . . 39Sobre recursos do painel Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62Sobre comportamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65Sobre as configurações de publicação do ActionScript . . . . . . . . . . . 66Capítulo 3: Sobre o ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . 71O que é ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72Sobre a opção entre o ActionScript 1.0 e o ActionScript 2.0 . . . . . . .73Noções básicas do ActionScript e do Flash Player . . . . . . . . . . . . . . . .74 3
  4. 4. Capítulo 4: Dados e tipos de dados . . . . . . . . . . . . . . . . . . . . . . . . 75Sobre dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Sobre tipos de dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Sobre variáveis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91Organizando dados em objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114Sobre a conversão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .116Capítulo 5: Fundamentos da sintaxe e da linguagem . . . . . . . . 119Sobre sintaxe, instruções e expressões . . . . . . . . . . . . . . . . . . . . . . . . . 120Sobre sintaxe de ponto e caminhos de destino . . . . . . . . . . . . . . . . . . 124Sobre pontuadores de linguagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132Sobre constantes e palavras-chave . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143Sobre instruções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149Sobre arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172Sobre operadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185Capítulo 6: Funções e métodos . . . . . . . . . . . . . . . . . . . . . . . . . . 213Sobre funções e métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213Noções básicas sobre métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235Capítulo 7: Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239Sobre a programação orientada a objeto e o Flash . . . . . . . . . . . . . 240Criando arquivos de classes personalizados. . . . . . . . . . . . . . . . . . . . 249Sobre como trabalhar com classes personalizadas em umaplicativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252Exemplo: Criando classes personalizadas. . . . . . . . . . . . . . . . . . . . . . . 278Exemplo: Usando arquivos de classes personalizados no Flash . . . 291Atribuindo uma classe a símbolos no Flash. . . . . . . . . . . . . . . . . . . . . 295Compilando e exportando classes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .296Noções básicas sobre classes e escopo . . . . . . . . . . . . . . . . . . . . . . . 299Sobre classes de nível superior e internas . . . . . . . . . . . . . . . . . . . . . . 302Sobre como trabalhar com classes internas . . . . . . . . . . . . . . . . . . . . . 312Capítulo 8: Herança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319Sobre herança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319Sobre a criação de subclasses no Flash . . . . . . . . . . . . . . . . . . . . . . . . 321Usando o polimorfismo em um aplicativo . . . . . . . . . . . . . . . . . . . . . . . 3274 Conteúdo
  5. 5. Capítulo 9: Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331Sobre interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331Criando interfaces como tipos de dados. . . . . . . . . . . . . . . . . . . . . . . . 337Noções básicas sobre herança e interfaces . . . . . . . . . . . . . . . . . . . . . 339Exemplo: Usando interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340Exemplo: Criando uma interface complexa . . . . . . . . . . . . . . . . . . . . . 342Capítulo 10: Manipulando eventos . . . . . . . . . . . . . . . . . . . . . . . 347Usando métodos manipuladores de eventos . . . . . . . . . . . . . . . . . . . . 348Usando ouvintes de eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .351Usando ouvintes de eventos com componentes . . . . . . . . . . . . . . . . 353Usando manipuladores de eventos de botão e de clipe de filme. . . 355Transmitindo eventos de instâncias de componentes . . . . . . . . . . . . 360Criando clipes de filme com estados de botão . . . . . . . . . . . . . . . . . . .361Escopo do manipulador de eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362Escopo da palavra-chave this . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365Usando a classe Delegate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366Capítulo 11: Trabalhando com clipes de filme . . . . . . . . . . . . . . 369Sobre o controle de clipes de filme com o ActionScript . . . . . . . . . . 370Chamando vários métodos em um único clipe de filme. . . . . . . . . . . 372Carregando e descarregando arquivos SWF . . . . . . . . . . . . . . . . . . . 373Alterando a posição e a aparência de um clipe de filme . . . . . . . . . . 376Arrastando clipes de filme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377Criando clipes de filme durante a execução . . . . . . . . . . . . . . . . . . . . . 378Adicionando parâmetros aos clipes de filme criadosdinamicamente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383Gerenciando profundidades do clipe de filme . . . . . . . . . . . . . . . . . . . 385Sobre o armazenamento em cache e a rolagem de clipesde filme com o ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389Usando clipes de filme como máscaras . . . . . . . . . . . . . . . . . . . . . . . . 397Manipulando eventos de clipes de filme . . . . . . . . . . . . . . . . . . . . . . . . 399Atribuindo uma classe a um símbolo de clipe de filme . . . . . . . . . . . . 399Inicializando as propriedades de classe . . . . . . . . . . . . . . . . . . . . . . . . .401Capítulo 12: Trabalhando com texto e seqüênciasde caracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403Sobre campos de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405Sobre o carregamento de texto e variáveis em campos de texto . . .415Usando fontes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420Sobre a renderização de fontes e texto sem serrilhado. . . . . . . . . . . 430 Conteúdo 5
  6. 6. Sobre o layout e a formatação de texto . . . . . . . . . . . . . . . . . . . . . . . . 439Formatando texto com estilos CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . .447Usando texto em formato HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461Exemplo: Criando texto de rolagem . . . . . . . . . . . . . . . . . . . . . . . . . . . .475Sobre seqüências de caracteres e a classe String. . . . . . . . . . . . . . . . 477Capítulo 13: Animação, filtros e desenhos . . . . . . . . . . . . . . . . . 497Scripts de animação com o ActionScript 2.0 . . . . . . . . . . . . . . . . . . 498Sobre cache de bitmap, rolagem e desempenho . . . . . . . . . . . . . . . 508Sobre as classes Tween e TransitionManager . . . . . . . . . . . . . . . . . 509Usando efeitos de filtro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .526Trabalhando com filtros usando ActionScript . . . . . . . . . . . . . . . . . . .534Manipulando efeitos de filtro com código . . . . . . . . . . . . . . . . . . . . . . .557Criando bitmaps com a classe BitmapData . . . . . . . . . . . . . . . . . . . . . 561Modos de mistura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .564Sobre a ordem de operação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567Desenhando com o ActionScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567Noções básicas sobre dimensionamento e guias de trecho . . . . . . .583Capítulo 14: Criando interação com o ActionScript . . . . . . . . . 589Sobre eventos e interação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590Controlando a reprodução de arquivos SWF . . . . . . . . . . . . . . . . . . . 590Criando interatividade e efeitos visuais. . . . . . . . . . . . . . . . . . . . . . . . . 593Criando vinculações de dados durante a execução como ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .607Desconstruindo um script de exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . 616Capítulo 15: Trabalhando com imagens, som e vídeo . . . . . . . . 619Sobre o carregamento e o trabalho com mídia externa . . . . . . . . . . 620Carregando arquivos SWF e de imagem externos . . . . . . . . . . . . . . . 621Sobre o carregamento e o uso de arquivos MP3 externos . . . . . . . .626Atribuindo vinculação a recursos da biblioteca. . . . . . . . . . . . . . . . . . . 631Sobre o uso de vídeo FLV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .632Sobre a criação de animações do progresso para arquivosde mídia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6546 Conteúdo
  7. 7. Capítulo 16: Trabalhando com dados externos . . . . . . . . . . . . . 663Enviando e carregando variáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664Usando HTTP para conectar a scripts do servidor . . . . . . . . . . . . . . . 668Sobre upload e download de arquivos . . . . . . . . . . . . . . . . . . . . . . . . . 674Sobre XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683Enviando mensagens para o Flash Player e a partir deste . . . . . . . . 692Sobre a API External . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696Capítulo 17: Noções básicas de segurança . . . . . . . . . . . . . . . . 707Sobre compatibilidade com os modelos de segurançaanteriores do Flash Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708Sobre segurança do arquivo local e o Flash Player . . . . . . . . . . . . . . 709Sobre domínios, segurança entre domínios e arquivos SWF . . . . . 727Arquivos de diretivas de servidor para autorizar o acesso a dados. 736Acesso de protocolo HTTP para HTTPS entre arquivos SWF . . . . . 741Capítulo 18: Depurando aplicativos . . . . . . . . . . . . . . . . . . . . . . 745Depurando scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745Usando o painel Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759Capítulo 19: Melhores práticas e convenções de codificaçãopara ActionScript 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .767Convenções de atribuição de nome . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769Usando de comentários no código. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 779Convenções de codificação do ActionScript . . . . . . . . . . . . . . . . . . . . 782Otimização do ActionScript e do Flash Player . . . . . . . . . . . . . . . . . . 798Formatando a sintaxe do ActionScript . . . . . . . . . . . . . . . . . . . . . . . . . 799Apêndice A: Mensagens de erro . . . . . . . . . . . . . . . . . . . . . . . . . 809Apêndice B: Operadores Flash 4 obsoletos . . . . . . . . . . . . . . . . 815Apêndice C: Teclas do teclado e valores de códigosde teclas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817Apêndice D: Criando scripts para versões anteriores do FlashPlayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825Sobre a especificação de versões anteriores do Flash Player . . . . 825Usando o Flash 8 para criar conteúdo para o Flash Player 4 . . . . . 826 Conteúdo 7
  8. 8. Apêndice E: Programação orientada a objeto como ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829Sobre o ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830Criando um objeto personalizado no ActionScript 1.0 . . . . . . . . . . . . 831Atribuindo métodos a um objeto personalizado noActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .832Definindo métodos manipuladores de eventos noActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .834Criando herança no ActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . .836Adicionando propriedades getter/setter a objetos noActionScript 1.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837Usando as propriedades do objeto Function no ActionScript 1.0 . .838Apêndice F: Terminologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841Índice. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8518 Conteúdo
  9. 9. IntroduçãoO Macromedia Flash Basic 8 e o Macromedia Flash Professional 8 são as ferramentas decriação padrão profissionais para a produção de experiências de grande impacto na Web. OActionScript é a linguagem utilizada para adicionar interatividade aos aplicativos Flash, sejamos aplicativos arquivos SWF animados simples ou aplicativos de Internet avançados maiscomplexos. Para usar o Flash, não é necessário o ActionScript, mas, se você desejar fornecerinteratividade básica ou complexa com o usuário, trabalhar com objetos diferentes daquelescontidos no Flash (como botões e clipes de filme) ou então transformar um arquivo SWF emuma 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. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Atualizando arquivos XML para Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Requisitos de sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Sobre a documentação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Recursos adicionais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Público-alvoEste manual pressupõe que você já tenha instalado o Flash Basic 8 ou o Flash Professional 8 esaiba como usar a interface de usuário.É preciso que saiba posicionar objetos no Stage emanipulá-los no ambiente de criação do Flash. Se já tiver usado uma linguagem de criação, oActionScript lhe parecerá familiar. No entanto, se for iniciante em programação, saiba que osfundamentos do ActionScript são fáceis de aprender. Você pode começar com comandossimples e criar mais complexidade com o tempo. Pode adicionar muita interatividade aos seusarquivos sem precisar aprender (ou escrever) muito código.Requisitos de sistemaO ActionScript 2.0 não tem qualquer requisito de sistema além do Flash 8 . 9
  10. 10. Este manual pressupõe que você esteja utilizando as configurações de publicação padrão paraos arquivos do Flash: Flash Player 8 e ActionScript 2.0. Se você alterar qualquer uma dessasconfigurações, as explicações e exemplos de código apresentados na documentação poderãonão funcionar corretamente. Caso desenvolva aplicativos para versões anteriores do FlashPlayer, consulte o Apêndice D, “Criando scripts para versões anteriores do Flash Player”, napágina 825.Atualizando arquivos XML para FlashÉ importante que estejam sempre instalados os arquivos XML para Flash mais recentes. AMacromedia algumas vezes apresenta recursos em versões com ponto (versões menores) doFlash Player. Quando uma versão dessas se encontrar disponível, atualize sua versão do Flashpara 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 FlashPlayer 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 PlayerUpdater (Atualizador de player) para atualizar todos os players instalados com o Flash. Casocontrário, o compilador do Flash exibirá erros.Lembre-se de que é possível instalar um Player Updater que seja de uma ou mais versõesmaiores 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 maisantigas do Flash Player. Algumas vezes, novos métodos ou propriedades encontram-sedisponíveis para versões mais antigas, e ter os arquivos XML mais recentes minimiza os errosde compilação quando você tenta acessar métodos ou propriedades mais antigos.Sobre a documentaçãoEste 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 usode 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 1310 Introdução
  11. 11. Visão geral do manual Aprendendo ActionScript 2.0A 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. 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 oselementos de linguagem propriamente ditos, consulte o ActionScript 2.0 Language Reference.12 Introdução
  13. 13. Convenções tipográficasEste 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 documentoOs 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ódigoQuando você colar o ActionScript do painel Help (Ajuda) para o FLA ou o arquivo doActionScript, 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 interpretadospelo editor do ActionScript, então o código lança um erro quando você tenta compilá-lo noFlash. Sobre a documentação 13
  14. 14. Você pode identificar se os caracteres de aspas são especiais quando eles não são codificadospor cores de forma correta. Ou seja, se nenhuma seqüência de caracteres mudar de cor noeditor de cores, será preciso substituir os caracteres especiais por caracteres de aspas retascomuns. Se você digitar um caractere de aspa simples ou dupla diretamente no editor doActionScript, sempre digitará um caractere de aspa reta. O compilador (quando você testa oupublica 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 algunslocais, a linha de código poderá se quebrar em um local inapropriado. Certifique-se de que acodificação de cores da sua sintaxe esteja correta no editor do ActionScript se achar que asquebras 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 (quebraautomática de linha) no editor do ActionScript para ajudar a solucionar quebras de linhaexcedentes no código (selecione View (Exibir) > Word Wrap (quebra automática de linha) najanela Script ou Word Wrap no menu pop-up do painel Actions.)Recursos adicionaisAlém deste manual sobre o ActionScript, existem outros sobre outros tópicos do Flash, comocomponentes 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 “Ondeencontrar 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 1714 Introdução
  15. 15. Sobre os arquivos de exemploHá vários arquivos de exemplo baseados no ActionScript que são instalados com o Flash. Essesarquivos de exemplo mostram como o código funciona em um arquivo FLA; geralmenteservem como uma ferramenta de aprendizado bem útil. Os capítulos deste manual muitasvezes fazem referência a esses arquivos, mas recomendamos que você consulte também a pastade arquivos de exemplo do seu disco rígido.Os arquivos de exemplo incluem arquivos FLA de aplicativo que usam funções comuns doFlash instaladas com ele. Esses aplicativos foram projetados para apresentar aos novosdesenvolvedores do Flash as capacidades dos aplicativos Flash assim como para mostrar aosdesenvolvedores avançados como funcionam os recursos do Flash no contexto.Você pode encontrar os arquivos de origem de exemplo com foco no ActionScript na pastaSamples (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, poiseles contêm vários códigos ActionScript. Eles também podem ser encontrados na pastaSamples 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. Apá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çãoimpressaCaso prefira ler a documentação em formato impresso, as versões PDF de cada manualencontram-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 odownload do PDF ou acessar o link da versão LiveDocs do manual. Recursos adicionais 15
  16. 16. Muitas vezes você também pode adquirir a documentação impressa. Para obter informaçõesatualizadas, vá até o site de suporte da documentação e selecione Flash Basic 8 ou FlashProfessional 8.Sobre o LiveDocsVocê pode acessar a documentação no site LiveDocs ou pelo painel Help. O site LiveDocsconté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 (Exibircomentários) em LiveDocs na parte inferior de uma página do painel Help para exibir apágina equivalente no site LiveDocs. Vá até http://livedocs.macromedia.com para ver umalista de toda a documentação disponível no formato LiveDocs.Escritores técnicos monitoram o site LiveDocs. Uma das vantagens do LiveDocs é vercomentários que esclarecem a documentação ou corrigir erros ou problemas que surgem apóso lançamento de um software. Não é no LiveDocs que você faz solicitações de ajuda, comoperguntas sobre seu código que não funciona, comentários sobre problemas com software ouinstalação ou perguntas sobre como criar algo com o Flash. Nele você fornece informaçõessobre a documentação (por exemplo, você aponta uma frase ou parágrafo que requeresclarecimento).Quando você clica no botão para adicionar um comentário sobre o LiveDocs, há diversospontos sobre os tipos de comentários que são aceitáveis no sistema. Leia essas diretrizesatentamente 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 fazerperguntas, 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 quemonitoram esses fóruns.Engenheiros não monitoram o sistema LiveDocs, mas a lista de tarefas do Flash. Se achar queencontrou 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 asolicitação de aprimoramento no LiveDocs, eles não serão adicionados de forma oficial aobanco de dados de bugs. Use o formulário apropriado se quiser que um engenheiro dê atençãoao 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 caracteresespeciais 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. 17. Recursos on-line adicionaisExistem vários recursos on-line que oferecem várias instruções, ajuda e orientação parafacilitar o uso do Macromedia Flash 8. Consulte com freqüência os seguintes sites para obteratualizações:O site The Macromedia Developer Center (www.macromedia.com/devnet) é atualizadoregularmente com as informações mais recentes sobre o Flash, além de ofereceraconselhamentos 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 daWeb 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 recursosadicionais na comunidade Flash.O site The Macromedia Weblogs (http://weblogs.macromedia.com) fornece uma lista dosweblogs (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áriosfó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 visitadospor funcionários de lá também. Se não souber a quem recorrer ou como resolver umproblema, comece por um fórum do Flash.O site The Macromedia Community (www.macromedia.com/community) hospedaregularmente Macrochats, uma série de apresentações ao vivo sobre uma variedade de tópicosfeitas 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 outrosassuntosOs manuais a seguir oferecem informações adicionais sobre assuntos comumente associadosao 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. 18 Introdução
  19. 19. CAPÍTULO 1Novidades do ActionScriptno Flash 8 1O Macromedia Flash Basic 8 e o Macromedia Flash Professional 8 oferecem váriosaprimoramentos que facilitam a criação de scripts mais eficientes com uso da linguagemActionScript. Os novos recursos, analisados neste capítulo, incluem novos elementos delinguagem (consulte “Acréscimos à linguagem ActionScript” na página 22), ferramentas deedição aprimoradas (consulte “Alterações de edição do ActionScript” na página 28), alteraçõesno modelo de segurança e outros aprimoramentos do ActionScript relacionados à ferramentade criação.Para obter mais informações, consulte os seguintes tópicos:Novidades do ActionScript 2.0 e do Flash 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19Alterações no modelo de segurança para arquivos SWF instalados localmente . 29Novidades do ActionScript 2.0 e doFlash 8A linguagem ActionScript cresceu e desenvolveu-se desde sua introdução, há vários anos. Comcada nova versão do Flash, mais palavras-chave, objetos, métodos e outros elementos foramadicionados à linguagem. Existem também aprimoramentos do ActionScript relacionados aosambientes de criação do Flash 8. O Flash Basic 8 e o Flash Professional 8 introduzem váriosnovos elementos de linguagem para recursos expressivos, como filtros e modos de mistura,além do desenvolvimento de aplicativos, como integração do JavaScript (ExternalInterface) eentrada 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ãonovos 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 elementosda linguagem nos seus scripts, tenha em mente o Flash Player 8 (o padrão) quando publicarseus documentos. 19
  20. 20. Os recursos a seguir foram adicionados ao Flash Basic 8 e ao Flash Professional 8 (a menos queexplicitado 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. 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. 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íficasadicionadas ao ActionScript 2.0 no Flash 8, consulte “Acréscimos à linguagem ActionScript”na página 22.Acréscimos à linguagem ActionScriptEsta seção lista acréscimos aos elementos e classes da linguagem ActionScript novos oualterados no Flash 8. As classes e os elementos de linguagem a seguir são novos acréscimos aoFlash 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. 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. 24. Os novos elementos, métodos e funções da linguagem adicionados a classes existentes noActionScript 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. 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. 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. 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. 28. Sobre elementos de linguagem obsoletosAlguns elementos de linguagem estão obsoletos no Flash Player 8. Para obter uma lista doselementos de linguagem obsoletos e alternativas para uso no Flash Player 8, consulte as seçõesa seguir do ActionScript 2.0 Language Reference:■ Deprecated Class summary■ Deprecated Function summary■ Deprecated Property summary■ Deprecated Operator summaryAlterações de edição do ActionScriptO editor do ActionScript no painel Actions e na janela Script foi atualizado de várias maneiraspara ficar mais eficiente e fácil de usar do que nas versões anteriores da ferramenta. Essasalterações são resumidas nesta seção.View hidden characters (Exibir caracteres ocultos) Agora você pode usar o menu pop-upOptions (Opções) dos painéis Script, Debugger (Depurador) e Output (Saída) para exibir ouocultar caracteres quando escrever arquivos de script no painel Actions ou na janela