New to this forum. I am using SWF Studio Version 3.4 and was asked to find out if we can use the application to layer high light boxes over a browser interface. The browser need to be an actual browser that the user can interact with. I have been able to create the browser window and load an html file that was local using the startdir moniker in the ssCore.Browser.setURL() method. That took a little figuring out, but it is working fine. However when I try to place a movie clip to display like a high light box over an area of the browser window, the movie clip always appears behind the browser window. Is there any way to handle depth management using the ssCore.Browser API or can you load multiple swf files into to the application in a some way so it displays movie clips over the browser window?
Here is the code that worked so far, but the movie clip always shows up in the back. I am on Windows XP using SWF Studio version 3.4 with Flash Studio 8 and Actionscript 2 code. Thank you in advance for any ideas.
I went ahead and attached the fla file and a text file that is actually the html file that gets loaded here. I guess we can't upload html files so you have to change the extension to .html instead of .txt, but you will see it is a really simple html file.
ssDefaults.synchronousCommands = true;
//set up buttons to call url for browser
var openButton:Button = this.openURLBtn;
var traceMovieButton:Button = this.traceMovieBtn;
//create initial browser object
//on button press load url asynchronously so you can trace errors
openButton.onPress = function()
//try drawing a highlight movie clip over the browser display area
call back functions omitted for brevity
//draws the movie clip to display over browser window
highlight_MC = _level0.createEmptyMovieClip("highlight_MC",1000);
Tried a trace function for all objects in the root movie to see how it was handling the browser window. It does not appear in the properties for the root movie so how is it handling the browser window display relative to the root swf?
for(prop in this)
ssDebug.trace(prop + ":" + this[prop]);
for(prop in this._level0.reserved)
ssDebug.trace(prop + ":" + this._level0.reserved[prop]);
Check out this explanation (2nd post):
The only other option is to create other instances of the Flash Player as ActiveX objects and position them where you need. The drawbacks are that those objects are solid rectangles (no transparency or irregular shapes) and the SWF contained can only talk to the main SWF through LocalConnection, since it's running in a different instance of the Flash Player.