#initclip

Availability

Flash Player 6.

Usage

#initclip order

Parameters

order An integer that specifies the execution order of blocks of #initclip code. This is an optional parameter.

Description

Action; indicates the beginning of a block of initialization actions. When multiple clips are initialized at the same time, you can use the order parameter to specify which initialization occurs first. Initialization actions execute when a movie clip symbol is defined. If the movie clip is an exported symbol, the initialization actions execute before the actions on Frame 1 of the SWF file. Otherwise, they execute immediately before the frame actions of the frame that contains the first instance of the associated movie clip symbol.

Initialization actions execute only once during the playback of a movie; use them for one-time initializations, such as class definition and registration.

Example

The following example code is assigned to the first frame of a movie that is a CheckBox component. The #initclip and #endinitclip actions designate the block of statements they enclose as initialization actions. The enclosed statements register the class and store methods in a prototype object.

#initclip
if (typeof(CheckBox) == "undefined") {
  // Define constructor for (and thus define) CheckBox class
  function CheckBox() {
    // Set up our data bindings
    this.watch ('value', function (id, oldval, newval) { ... };
    this.watch ('label', function (id, oldval, newval) { ... };
  }
  // Set CheckBox prototype chain to inherit from MovieClip
  CheckBox.prototype = new MovieClip();
  // Register CheckBox as the class for symbol "Check Box"
  Object.registerClass("Check Box", CheckBox);
  // Set up some methods
  CheckBox.prototype.enable = function () { ... };
  CheckBox.prototype.show = function () { ... };
  CheckBox.prototype.hide = function () { ... };
  // Set up a convenience function to instantiate
  // check boxes
  CheckBox.create = function (parent_mc, instanceName, depth) {
    parent_mc.attachMovie("CheckBox", instanceName, depth);
  };
}
#endinitclip

Note: If you copy and paste this code into the Actions panel, it will generate an error when the script is compiled because of the undefined functions ({...})

See also

#endinitclip