Flash supports a number of built-in visual objects. Nevertheless, the number of varieties is limited, that's why in most cases needed elements, e.g. Graphic User Interface, are created by combining a few standard objects. All the standard objects are defined in DefineXXX. They are: Shape, MorphShape, Static Text, Dynamic Text, Button, Video and Sprite.
Pay attention to the fact that there is no Image object. To display an image, it must be used as a fill for rectangular shape.
Unique CharacterID
Each visual object has its own unique CharacterID – a number of the word type, i.e. value between 0 and $FFFF. If you create object by yourself, you have to ensure its uniqueness. Uniqueness is needed to let player definitely understand what object to use at processing tagPlaceObject.
When it's needed to combine a few SWF, the first task is to ensure the uniqueness of these CharacterIDs, otherwise some objects won't be displayed. To do that, it's necessary to redefine all values in one SWF by changing existing values to values which is known to be free.
Objects names
As I've mentioned before, object name is set in tagPlaceObject, it's obligatory to specify CharacterID here. It's possible to create a few copies of one object with different names. Again, at combining two SWFs, it's necessary to ensure names uniqueness. As a rule, names are used in ActionScript for managing these copies, that's why in case of renaming objects it's necessary to make corresponding corrections in ActionScript.
Hi,
ReplyDeleteI just came across your Delphi SWF SDK yesterday. I think it looks like excellent work on your part.
However I have a question. I tried out some Adobe AIR samples from the Adobe web site, and I noticed that some of them utilized transparent canvases (for instance the sample application PixelPerfect).
I see from your documentation that the WMode = "Transparent" will not work in Delphi applications.
Is this absolute? Or is it possible in some manner to instantiate the Flash player as a floating window outside of a Delphi Form, and to make it transparent or semi transparent?
Rgds
Elling