DekGenius.com
HOME
Dictionary
BOOKS
LYRICS
CHORD
GAME
Karaoke language
[ Team LiB ]
•
Table of Contents
•
Index
•
Reviews
•
Reader Reviews
•
Errata
ActionScript Cookbook
By
Joey Lott
Publisher
: O'Reilly
Pub Date
: July 2003
ISBN
: 0-596-00490-7
Pages
: 896
Copyright
Preface
What's Not in This Book
Flash Naming Conventions
The Code
Typographical Conventions
We'd Like to Hear from You
Acknowledgments
Part I: Local Recipes
Chapter 1. ActionScript Basics
Introduction
Recipe 1.1. Using Mathematical Operators
Recipe 1.2. Checking Equality or Comparing Values
Recipe 1.3. Performing Actions Conditionally
Recipe 1.4. Performing Complex Conditional Testing
Recipe 1.5. Repeating an Operation Many Times
Recipe 1.6. Performing an Action Once per Frame Update
Recipe 1.7. Repeating a Task at Timed Intervals
Recipe 1.8. Creating Reusable Code
Recipe 1.9. Generalizing a Function to Enhance Reusability
Recipe 1.10. Exiting a Function
Recipe 1.11. Obtaining the Result of a Function
Recipe 1.12. Avoiding Conflicting Variables
Recipe 1.13. Reusing and Organizing Code in Multiple Movies
Chapter 2. Runtime Environment
Introduction
Recipe 2.1. Detecting the Player Version
Recipe 2.2. Detecting the Operating System
Recipe 2.3. Checking the System Language
Recipe 2.4. Detecting Display Settings
Recipe 2.5. Scaling the Movie
Recipe 2.6. Changing the Alignment
Recipe 2.7. Detecting the Device's Audio Capabilities
Recipe 2.8. Prompting the User to Change Player Settings
Recipe 2.9. Hiding the Flash Player's Menu Items
Recipe 2.10. Enhancing Standalone Projectors
Recipe 2.11. Setting the Dimensions of a Projector
Recipe 2.12. Specifying Where on Screen a Projector Opens
Chapter 3. Color
Introduction
Recipe 3.1. Setting the Color of a Movie Clip
Recipe 3.2. Specifying RGB Values
Recipe 3.3. Decoding an RGB Value
Recipe 3.4. Setting the RGB Relative to Its Current Value
Recipe 3.5. Tinting a Movie Clip's Color
Recipe 3.6. Setting a Movie Clip's Transparency
Recipe 3.7. Transforming a Movie Clip's Current Color
Recipe 3.8. Restoring a Movie Clip's Original Color
Recipe 3.9. Controlling a Movie Clip's Color with Sliders
Chapter 4. Drawing and Masking
Introduction
Recipe 4.1. Drawing a Line
Recipe 4.2. Drawing a Curve
Recipe 4.3. Drawing a Rectangle
Recipe 4.4. Drawing a Rounded Rectangle
Recipe 4.5. Drawing a Circle
Recipe 4.6. Drawing an Ellipse
Recipe 4.7. Drawing a Triangle
Recipe 4.8. Drawing Regular Polygons
Recipe 4.9. Filling a Shape with a Solid or Translucent Color
Recipe 4.10. Filling a Shape with a Gradient
Recipe 4.11. Filling a Shape with a Complex Gradient
Recipe 4.12. Scripting Masks
Chapter 5. Numbers and Math
Introduction
Recipe 5.1. Representing Numbers in Different Bases
Recipe 5.2. Converting Between Different Number Systems
Recipe 5.3. Rounding Numbers
Recipe 5.4. Inserting Leading or Trailing Zeros
Recipe 5.5. Formatting Numbers for Display
Recipe 5.6. Formatting Currency Amounts
Recipe 5.7. Generating a Random Number
Recipe 5.8. Simulating a Coin Flip
Recipe 5.9. Simulating Dice
Recipe 5.10. Simulating Playing Cards
Recipe 5.11. Generating a Unique Number
Recipe 5.12. Converting Angle Measurements
Recipe 5.13. Calculating the Distance Between Two Points
Recipe 5.14. Determining Points Along a Circle
Recipe 5.15. Converting Between Units of Measurement
Recipe 5.16. Calculating Asset Appreciation (Future Value)
Recipe 5.17. Calculating Retirement Savings
Recipe 5.18. Calculating the Loan (Mortgage) You Can Afford
Recipe 5.19. Calculating Loan Amortization or Annuities
Chapter 6. Arrays
Introduction
Recipe 6.1. Adding Elements to the Start or End of an Array
Recipe 6.2. Looping Through an Array
Recipe 6.3. Searching for Matching Elements in an Array
Recipe 6.4. Removing Elements
Recipe 6.5. Inserting Elements in the Middle of an Array
Recipe 6.6. Converting a String to an Array
Recipe 6.7. Converting an Array to a String
Recipe 6.8. Creating a Separate Copy of an Array
Recipe 6.9. Storing Complex or Multidimensional Data
Recipe 6.10. Sorting or Reversing an Array
Recipe 6.11. Implementing a Custom Sort
Recipe 6.12. Creating an Associative Array
Recipe 6.13. Reading Elements of an Associative Array
Chapter 7. Movie Clips
Introduction
Recipe 7.1. Referring to Movie Clips via ActionScript
Recipe 7.2. Targeting Movie Clips with Dynamic Names
Recipe 7.3. Affecting Playback
Recipe 7.4. Reversing Playback
Recipe 7.5. Using Movie Clips as Buttons
Recipe 7.6. Defining Hit Areas for Movie Clips
Recipe 7.7. Checking for Mouseover
Recipe 7.8. Performing Repeated Actions on Movie Clips
Recipe 7.9. Fading a Movie Clip
Recipe 7.10. Discovering Nested Movie Clips
Recipe 7.11. Getting Unique Depths
Recipe 7.12. Getting a Movie Clip's Boundaries
Recipe 7.13. Creating a Draggable Movie Clip
Recipe 7.14. Creating a Custom Mouse Pointer
Recipe 7.15. Checking for Overlapping Movie Clips (Performing Hit Tests)
Recipe 7.16. Changing Stacking Order
Recipe 7.17. Converting Between Coordinate Spaces
Recipe 7.18. Duplicating Movie Clips
Recipe 7.19. Adding Movie Clips from the Library with ActionScript
Chapter 8. Text
Introduction
Recipe 8.1. Referring to a Text Field via ActionScript
Recipe 8.2. Creating a Text Field
Recipe 8.3. Creating an Outline Around a Text Field
Recipe 8.4. Creating a Background for a Text Field
Recipe 8.5. Making a User Input Field
Recipe 8.6. Making a Password Input Field
Recipe 8.7. Filtering Text Input
Recipe 8.8. Restricting the Maximum Field Length
Recipe 8.9. Displaying Dynamic Text at Runtime
Recipe 8.10. Displaying HTML-Formatted Text
Recipe 8.11. Condensing Whitespace
Recipe 8.12. Sizing Text Fields to Fit Contents
Recipe 8.13. Scrolling Text with the ScrollBar Component
Recipe 8.14. Scrolling Text Programmatically
Recipe 8.15. Responding to Scroll Events
Recipe 8.16. Formatting Existing Text
Recipe 8.17. Formatting User-Input Text
Recipe 8.18. Formatting a Portion of a Text Field
Recipe 8.19. Setting a Text Field's Font
Recipe 8.20. Embedding Fonts
Recipe 8.21. Creating Text That Can Be Rotated
Recipe 8.22. Displaying Unicode Text
Recipe 8.23. Assigning Focus to a Text Field
Recipe 8.24. Selecting Text with ActionScript
Recipe 8.25. Setting the Insertion Point in a Text Field
Recipe 8.26. Responding When Text Is Selected or Deselected
Recipe 8.27. Responding to User Text Entry
Recipe 8.28. Adding a Hyperlink to Text
Chapter 9. Strings
Introduction
Recipe 9.1. Joining Strings
Recipe 9.2. Using Quotes and Apostrophes in Strings
Recipe 9.3. Inserting Special Whitespace Characters
Recipe 9.4. Searching for a Substring
Recipe 9.5. Extracting a Substring
Recipe 9.6. Matching Patterns with Regular Expressions
Recipe 9.7. Looking for a Pattern Match
Recipe 9.8. Parsing a String into Words
Recipe 9.9. Removing and Replacing Characters
Recipe 9.10. Processing One Character at a Time
Recipe 9.11. Converting Case
Recipe 9.12. Trimming Whitespace
Recipe 9.13. Reversing a String by Word or by Letter
Recipe 9.14. Converting Between Strings and Unicode or ASCII
Chapter 10. Dates and Times
Introduction
Recipe 10.1. Finding the Current Date and Time
Recipe 10.2. Retrieving the Day or Month Name
Recipe 10.3. Formatting the Date and Time
Recipe 10.4. Formatting Milliseconds as Minutes and Seconds
Recipe 10.5. Converting Between DMYHMSM and Epoch Milliseconds
Recipe 10.6. Calculating Elapsed Time or Intervals Between Dates
Recipe 10.7. Parsing a Date from a String
Recipe 10.8. Creating Timers and Clocks
Chapter 11. Forms
Introduction
Recipe 11.1. Adding UI Components at Runtime
Recipe 11.2. Positioning Form Elements
Recipe 11.3. Adding Menus to a Form
Recipe 11.4. Making Dependent Menus
Recipe 11.5. Resizing Menus to Fit Their Contents
Recipe 11.6. Detecting the Selected Menu Items
Recipe 11.7. Adding Radio Buttons to a Group
Recipe 11.8. Aligning Radio Buttons Automatically
Recipe 11.9. Getting the Selected Radio Button Value
Recipe 11.10. Adding Checkboxes to a Form
Recipe 11.11. Getting Checkbox Values
Recipe 11.12. Assembling an Advanced Form
Recipe 11.13. Submitting a Form
Recipe 11.14. Validating Form Input
Recipe 11.15. Alerting Users to Validation Errors
Recipe 11.16. Making a Multipage Form
Recipe 11.17. Submitting a Multipage Form
Recipe 11.18. Validating a Multipage Form
Recipe 11.19. Transmitting Data Securely
Recipe 11.20. Prepopulating a Form
Recipe 11.21. Customizing the Tab Order
Recipe 11.22. Using Tables to Arrange Form Elements
Recipe 11.23. Creating Auto-Complete Text Fields
Recipe 11.24. Customizing a Component's Appearance
Recipe 11.25. Customizing All Components' Appearances
Chapter 12. Objects and Custom Components
Introduction
Recipe 12.1. Using Methods and Properties of Built-in Objects
Recipe 12.2. Creating an Instance of a Class
Recipe 12.3. Adding Properties to an Object Instance
Recipe 12.4. Adding Custom Methods to an Object Instance
Recipe 12.5. Creating a Custom Class
Recipe 12.6. Creating Smart Getter/Setter Properties
Recipe 12.7. Defining Read-Only Properties
Recipe 12.8. Creating Subclasses
Recipe 12.9. Implementing Subclass Versions of Superclass Methods
Recipe 12.10. Listening for Events
Recipe 12.11. Adding Listeners to Custom Classes
Recipe 12.12. Creating a Component That Subclasses MovieClip
Recipe 12.13. Program: Color Selector Component
Chapter 13. Programming Sound
Introduction
Recipe 13.1. Creating an Object to Control Sound
Recipe 13.2. Attaching Sounds at Runtime
Recipe 13.3. Playing and Stopping a Sound
Recipe 13.4. Getting Playback Time
Recipe 13.5. Looping a Sound
Recipe 13.6. Setting In and Out Points
Recipe 13.7. Pausing and Resuming a Sound
Recipe 13.8. Performing Actions When a Sound Ends
Recipe 13.9. Queuing Sounds
Recipe 13.10. Adding Sounds to Buttons and UI Components
Recipe 13.11. Setting the Volume of a Sound
Recipe 13.12. Controlling the Panning of a Sound
Recipe 13.13. Creating Advanced Stereo Panning Effects
Recipe 13.14. Fading In a Sound
Recipe 13.15. Fading Out a Sound
Recipe 13.16. Program: A Sound Controller Component
Part II: Remote Recipes
Chapter 14. FlashCom Server
Introduction
Recipe 14.1. Creating a New FlashCom Application
Recipe 14.2. Connecting to the FlashCom Server
Recipe 14.3. Adding a Video Object at Runtime
Recipe 14.4. Capturing and Displaying Video from a Web Cam
Recipe 14.5. Capturing and Playing Audio from a Microphone
Recipe 14.6. Controlling FlashCom Audio
Recipe 14.7. Subscribing to Audio/Video Content
Recipe 14.8. Creating Playlists
Recipe 14.9. Recording and Publishing Video and Audio
Recipe 14.10. Publishing Live Content
Recipe 14.11. Pausing and Resuming a Net Stream
Recipe 14.12. Fast-Forwarding and Rewinding a Net Stream
Recipe 14.13. Seeking Relative to the Total Stream Length
Recipe 14.14. Implementing Server-Side ActionScript
Recipe 14.15. Tracking Clients Connected to the Application
Recipe 14.16. Invoking Server-Side Functions from the Client Movie
Recipe 14.17. Invoking Client-Side Functions from the Server
Chapter 15. Loading Assets
Introduction
Recipe 15.1. Loading an External SWF
Recipe 15.2. Loading an External SWF from a Trusting Domain
Recipe 15.3. Loading an External JPEG Image
Recipe 15.4. Loading an External Image (All Formats)
Recipe 15.5. Loading an External MP3 Sound
Recipe 15.6. Loading Remote Content by Proxy
Recipe 15.7. Determining if an Asset Is Loaded
Recipe 15.8. Getting the Percentage of an Asset That Has Loaded
Recipe 15.9. Monitoring Load Progress Using a Progress Bar Component
Recipe 15.10. Monitoring Load Progress Without a Progress Bar Component
Recipe 15.11. Performing Actions When the Asset Is Loaded
Recipe 15.12. Hiding the Graphics and Text for a Progress Bar
Chapter 16. Storing Persistent Information
Introduction
Recipe 16.1. Storing and Retrieving Locally Persistent Information
Recipe 16.2. Adding Data to a Client-Side Shared Object
Recipe 16.3. Reading Values from a Client-Side Shared Object
Recipe 16.4. Saving a Local Shared Object
Recipe 16.5. Sharing Information Between Movies Within the Same Domain
Recipe 16.6. Storing Persistent Data on the Server
Recipe 16.7. Saving Remote Shared Object Data
Recipe 16.8. Checking for Updates to Remote Shared Objects
Recipe 16.9. Reading Values from a Server-Side Shared Object
Recipe 16.10. Adding Data to a Server-Side Shared Object
Chapter 17. Communicating with Other Movies
Introduction
Recipe 17.1. Communicating with Other Movieson the Same Computer
Recipe 17.2. Sending Data Using Local Connections
Recipe 17.3. Validating Receipt of Communication Over a Local Connection
Recipe 17.4. Accepting Communications from Other Domains
Recipe 17.5. Communicating Between Movies on Different Computers
Recipe 17.6. Broadcasting Data to Remote Shared Object Clients
Chapter 18. Sending and Loading Variables
Introduction
Recipe 18.1. Loading Variables from a Text File
Recipe 18.2. Loading Variables from a Server-Side Script
Recipe 18.3. Checking Load Progress
Recipe 18.4. Sending Data to a Server-Side Script
Recipe 18.5. Sending Variables and Handling a Returned Result
Chapter 19. XML
Introduction
Recipe 19.1. Understanding XML Structure (Reading and Writing XML)
Recipe 19.2. Creating an XML Object
Recipe 19.3. Adding Elements to an XML Object
Recipe 19.4. Adding Text Nodes to an XML Object
Recipe 19.5. Creating an XML Object from an Array
Recipe 19.6. Adding Attributes to an XML Element
Recipe 19.7. Reading Elements in an XML Tree
Recipe 19.8. Finding Elements by Name
Recipe 19.9. Reading Text Nodes and Their Values
Recipe 19.10. Reading an Element's Attributes
Recipe 19.11. Loading XML
Recipe 19.12. Removing Extra Whitespace from XML Objects
Recipe 19.13. Sending XML
Recipe 19.14. Sending XML Data and Receiving a Response
Recipe 19.15. Searching XML
Recipe 19.16. Using XML Data to Initialize a Movie
Chapter 20. Flash Remoting
Introduction
Recipe 20.1. Establishing a Connection via Flash Remoting
Recipe 20.2. Configuring Flash Remoting for ColdFusion
Recipe 20.3. Configuring Flash Remoting for .NET
Recipe 20.4. Configuring Flash Remoting for J2EE
Recipe 20.5. Configuring Flash Remoting for PHP or Perl
Recipe 20.6. Invoking a Remote Function on a Service
Recipe 20.7. Handling Flash Remoting Results
Recipe 20.8. Distinguishing Among Results from Multiple Calls to a Single Service
Recipe 20.9. Calling ASP.NET Functions from Flash
Recipe 20.10. Calling ColdFusion Functions from Flash
Recipe 20.11. Passing Named Parameters to ColdFusion Component Methods
Recipe 20.12. Passing Complex Parameters to ColdFusion Component Methods
Recipe 20.13. Calling Java or JSP Functions from Flash
Recipe 20.14. Transmitting Custom Datatypes to a Flash Remoting Back End
Recipe 20.15. Receiving Typed Objects with ColdFusion
Recipe 20.16. Receiving Typed Objects with ASP.NET
Recipe 20.17. Receiving Typed Objects with Java
Recipe 20.18. Returning Typed Objects from ColdFusion
Recipe 20.19. Returning Typed Objects from ASP.NET
Recipe 20.20. Returning Typed Objects from Java
Recipe 20.21. Writing Server-Side Functions in ActionScript
Recipe 20.22. Querying a Database with Server-Side ActionScript
Recipe 20.23. Making HTTP Requests with Server-Side ActionScript
Recipe 20.24. Consuming Web Services with Flash Remoting for .NET or ColdFusion
Chapter 21. Recordsets
Introduction
Recipe 21.1. Creating Recordsets
Recipe 21.2. Reading Recordsets
Recipe 21.3. Filtering Recordsets
Recipe 21.4. Sorting Recordsets by a Single Column
Recipe 21.5. Populating Menu Components
Recipe 21.6. Using Recordsets with DataGrids
Part III: Applications
Chapter 22. Building a Flash Paint Application
Section 22.1. Planning the Application
Section 22.2. Building the Components
Section 22.3. Assembling the Flash Paint Application
Section 22.4. Using Flash Paint
Chapter 23. Creating a Simple Animation in Stages
Section 23.1. Stage One
Section 23.2. Stage Two
Section 23.3. Stage Three
Section 23.4. Stage Four
Section 23.5. Stage Five
Section 23.6. Conclusion
Chapter 24. Video Chat/Message Center
Section 24.1. Developing the Application Overview
Section 24.2. Creating the Server-Side Application
Section 24.3. Creating the Calling Client
Section 24.4. Creating the Administrator Client
Section 24.5. Putting It All Together
Chapter 25. Image Viewer/Slideshow
Section 25.1. Planning the Application Design
Section 25.2. Beginning the Application
Section 25.3. Creating the Components
Section 25.4. Putting Together the Application
Section 25.5. Wrapping It Up
Chapter 26. Creating an MP3 Jukebox
Section 26.1. Creating an Application Overview
Section 26.2. Developing the MP3 Selectors
Section 26.3. Developing the Jukebox Application
Section 26.4. Wrapping It Up
Chapter 27. A Personalized My Page Application
Section 27.1. Formulating the Application Overview
Section 27.2. Creating the Framework
Section 27.3. Creating Service Modules
Section 27.4. Putting It All Together
Section 27.5. Extending the Framework
Section 27.6. Wrapping It Up
Chapter 28. A Scheduler Program
Section 28.1. Designing the Application Structure
Section 28.2. Making the Components
Section 28.3. Putting the Application Together
Section 28.4. Making the Scheduler Application Available Online
Section 28.5. Using LoadVars and XML
Section 28.6. Wrapping It Up
Appendix A. Unicode Escape Sequences for Latin 1 Characters
Colophon
Index
[ Team LiB ]