Passing Captivate Variables to Embedded swf
Hello,
How can i read a captivate variable in embedded swf file like cpInfoCurrentSlide;
Thanks
var cpRoot:Object = MovieClip(root);
var mainmov:Object = MovieClip(cpRoot.parent.root);
mainmov.cpInfoCurrentSlide
mainmov.rdinfoCurrentSlide
Some things only work with the old rd variables.
This works for 6 and 7, I haven't tested on 8 yet.
Similar Messages
-
Accessing Captivate 5.5 variables from embedded SWFs
Hi,
as we all know the interface for accessing Captivate variables from embedded SWFs tends to change between Captivate versions. Shortly after it's release we upgraded to version 5.5, and I'm not succeeding in accessing the Captivate variables in my Flash/AS3 code the same way it was done in version 5.
How should I access the Captivate 5.5 variables (rdinfoCurrentSlide et al) from my SWFs?Hi,
You can use system variable : cpInfoCurrentSlide to show the slide number.
So you can use text captions to display the value of the variable, the format for displaying the value stored in the variable is $$<system variable>$$. So for slide number use : $$cpInfoCurrentSlide$$, type this in the text caption and then check it in the preview.
Thanks -
Hey,
Does anyone know how to pass a variable (string) from one swf
to another if there in separate html pages?
I assume I’d have to send the variable from the first
page and load it into the second but I don’t know what
functions or code I should be using. Any suggestions would be a
HUGE help.
Thanks
If it helps: I’m creating a log in and sign up sheet
that can be accessed from several sites. I’d like to record
which site the user has come from when they signup.
Thanksif they are open at the same time (for the same user), you
can use the localconnection class to communicate between the
two. -
Passing parameters to an embedded swf
Hi all,
I'm trying to embed a SWF animation that contains parameters (flashvars). I successfully used this animation in HTML and passed values to these parameters and now I want to embed it in a Flex project.
I managed to load and show the animation in several ways but I can't find how to pass it values for the parameters.
Anyone knows how to do this?
Thanks!I don’t know of any way to do that without modifying the SWF to accept some handshake from the loading application. An embedded SWF is being loaded via loadBytes and there is no parameter/flashvar passing mechanism.
-
Passing Captivate variables to Flash widget
Hello,
I'm developing a simple progress bar widget in Flash to add to a Captivate course I'm building. I believe what I want to do is very simple, but I appear to be missing something.
Quick synopsis:
I have created a variable in Captivate 5.5 called intProgress which should be a percentage of a student's progress through the course. I set this manually via an Advanced Action upon entering the slide.
I've also created a Progress Bar widget in Flash 5.5. It consists of nothing more than a manual progress bar component in Flash.
I want to feed that intProgress value from Captivate into my Flash widget, and have the progress bar update accordingly.
Here is my function (aPb is my progress bar) -
function courseProgress(intPercentage)
aPb.setProgress(intPercentage, 100)
And here is how I am trying to pass the variable over:
courseProgress(MovieClip(root).intProgress);
It doesn't look like the variable is coming across from Captivate to the widget. How can I correctly do this?
Please let me know what I'm doing wrong and/or what I'm missing here.
Thanks for any help anyone can provide!
DanielCool - I've found out how to access my custom variable thanks to your help. Right now, I'm using a simple text field as a debug (instead of the progress bar) just until I get everything sorted out.
In the cpSetValue function of the widget, I tested with the slide name variable you provided first:
myText.text = "label:" + m_VariableHandle.cpInfoCurrentSlideLabel;
And then progressed onward to my custom variable.
myText.text = "prog:" + m_VariableHandle.intProgress; (my custom variable)
So I have full connection to those, they're reading perfectly. That m_VariableHandle is giving me the connection I need (good to know for the future).
They're just not getting updated. It just keep showing the values for the first slide - for both the SlideLabel and the custom variable. So now my trouble lies not in the reading of the variable, but the updating of it - to get the most current value. That's a step forward though, very happy about that.
To answer your question - yes, I'm doing a variable modification on every slide enter. I'll set my intProgress variable to 5, then maybe 10 on the next slide, then 15, etc. It's very important that I set that manually, as my project is not linear. In other words, there may be a trail of 10 slides later on that are a "side" branch - and not part of the course progression.
So, thanks again for your help. I'm a whole lot closer than I was before! -
Setting Variables to embedded SWF in Director
I have a print button on screen at the end of a test within
my director project. Once the user completes they are able to print
there results. I have a certificate created in Flash publised using
player 7 AS2 which is suppose to recieve varibles and populate text
fields on stage.
This works perfect when testing within the authoring
environment or when using a projector but when using Shockwave it
doesn't seem to send all the variables to the flash movie.
therefore does not trigger the flash printObj command.
Now last time I checked the project online it was working
perfect in Shockwave 10.1 and the earlier version of shockwave 10.2
I noticed with shockwave 10.2.0.23 the latest version it
crashes out the browsers. I have fixed it from crashing but not all
the variables are getting to the flash movie.
I am using:
on mouseUp me
pPrintMe = true
end
on exitframe me
myCallBack= sprite(pPrintSprite).getVariable("drCallback",
true)
if pPrintMe=true then
setVariable(sprite(pPrintSprite) , "drTitle",
string(myObjectList[#CBT][1]))
setVariable(sprite(pPrintSprite) , "drName",
string(myObjectList[#firstname] & " " &
myObjectList[#lastname]))
setVariable(sprite(pPrintSprite) , "drTID",
string(myObjectList[#tid]))
setVariable(sprite(pPrintSprite) , "drModule", "Has
completed the test for the above training package with the
following results:")
setVariable(sprite(pPrintSprite) , "drScore",
string(gtestPList[#score][1] & " out of " &
gtestPList[#score][2] & " points"))
setVariable(sprite(pPrintSprite) , "drPercent",
string(gTestPList[#score][4]))
setVariable(sprite(pPrintSprite) , "drDate",
string(baSystemTime("%0d-%b-%Y")))
setVariable(sprite(pPrintSprite) , "copyright",
"Copyright© "&string(baSystemTime("%Y"))&" Company
name")
end if
end
Now simple enough code. I blame Adobe for breaking my
code!O yes, i have very similar problem to this, where since i
have updated to latest version of the shockwave player, not all my
variables are passing through to flash (version 8) and my web
browser is crashing out.
What can i do about this? -
Passing shell variable to embedded apple script possible?
The shell script below contains an embedded apple script. Is it possible to assign the contents of the shell script variable MyShellVar to MyApplVar?
-Thanks
#!/bin/bash
MyShellVar = $(ls /tmp)
/usr/bin/osascript << EOF
set MyApplVar to MyShellText --Don't work!
tell application "Finder"
activate
set result to display dialog MyApplVar buttons {"OK"} default button "OK"
end tell
EOFEither of these should work:
#!/bin/bash
MyShellVar = $(ls /tmp)
/usr/bin/osascript << EOF
set MyApplVar to $MyShellVar
tell application "Finder"
activate
set result to display dialog MyApplVar buttons {"OK"} default button "OK"
end tell
EOF
... or ...
#!/usr/bin/oascript
set MyApplVar to do shell script "ls /tmp"
tell application "Finder"
activate
set result to display dialog MyApplVar buttons {"OK"} default button "OK"
end tell -
Hw to pass the variable to popwindow swf ????
HI
In the First there will be 4 thumbnail will be there, if i
will press the first thumbnail then it should open the popupwindow
with the image .
then i need to zoomin and zoom out function for that image..it's the exact posting from your last post. Please don't duplicate the postings, so that we can help you in one thread and not so many different threads
-
Passing values to an embedde SWF in flex 2
Hello,
I am embedded an swf (which takes flash variables) in flex
2,how can i pass values to the
embedded swf through flash variables.
regards
kaushikHi Rajendra,
what u can pass to a function module is the parameter which are in import and tables of RFC .so u have to declare a variable as a type of your internal table which may be type of structure or table. then in your RFC u have to copy that into a variable of function module and go for ur logic ... -
Passing a variable from Captivate 5 to Flash CS5/ActionScript 3
I don't get it. Why is it so difficult to pass a variable from Captivate 5 to AS3/Flash CS5. I must be making it harder than it really is. I cannot figure it out. Can anyone help?
I have a variable (gpDone = 1) defined in Captivate 5 (it's a guided practice) on the last frame which will indicate that the learner has completed the guided practice file.
Now I want to pass that variable back to Flash/AS3 so I can evaluate whether I should show the Continue button so they can continue. They have to complete the guided practice before they can continue. If it is equal to 1, the Continue button will display. If it is not equal to 1, the Continue button will not display, but a message will display telling them they have to complete the guided practice in order to continue in the course.
Do I need to edit the Flash html? Or just put code in the Flash timeline or the associated AS file?
Help would be greatly appreciated. Thanks in advance.
CAHHaving the same problem...getting variable values FROM captivate to my inserted .swf (not widgets).
I can set the value from the .swf to the captivate using Object(parent.parent.parent.parent).captivateVariable but not the other way around.
Very frustrating.
I hope someone answers your query. -
Pass filename as a variable to a swf file
I want to pass a variable which will represent a filename to
a swf file from a hypertext link in an HTML document.
When the user clicks on the link which has
?variablename=filename_to_use appended to a "normal" link to a
page,
this variablename will be passed to the swf file.
I've already created this target swf file to have an
actionscript with a FLVPlayComponent with the filename hard-coded
in the actionscript. I want the actionscript to use the variable
representing the filename_to_use that was passed to from the URL
line.
The following is the actionscript that plays the flv file
taken from the Flash Help: Creating an Application with an
FLVComponent
ORIGINAL VERSION:
import mx.video.*;
this.attachMovie("FLVPlayback", "my_FLVPlybk", 10,
{width:320, height:240, x:100, y:100});
my_FLVPlybk.skin = "file:///install_drive|/Program
Files/Macromedia/Flash
8/en/Configuration/Skins/ClearOverPlaySeekMute.swf"
my_FLVPlybk.contentPath = "
http://www.helpexamples.com/flash/video/water.flv";
VERSION USING THE FILENAME FROM THE PASSED VARIABLE INSTEAD
OF WATER.FLV
import mx.video.*;
this.attachMovie("FLVPlayback", "my_FLVPlybk", 10,
{width:320, height:240, x:100, y:100});
my_FLVPlybk.skin = "file:///install_drive|/Program
Files/Macromedia/Flash
8/en/Configuration/Skins/ClearOverPlaySeekMute.swf"
my_FLVPlybk.contentPath = "
http://www.helpexamples.com/flash/video/variable";
I currently can play videos with this actionscript at my
school website but must make a separate swf for each video.
I want to be able to have one swf file that will play which
video was passed from the link in the HTML page.
I am using HTML page to lower the bandwidth so that users
won't have to load a swf file to see curricular material and then
perhaps choose a video on the topic.
http://www.wearekennedy.com/kent/whatsup.htm
click the link to the Spring curriculum map with resources
and then click on e.g. The_Food_Web video
Thank you,
Kevin Kent
Educator, John F. Kennedy H.S., Bronx, NYYou can use Liskov substitution/polymorphism:
DROP TYPE DEMO_T2
DROP TYPE DEMO_T1
DROP TYPE DEMO_ST
CREATE TYPE DEMO_ST AS OBJECT
( ID NUMBER,
MEMBER PROCEDURE THIS_PROC)
NOT FINAL NOT INSTANTIABLE
CREATE TYPE DEMO_T1 UNDER DEMO_ST
( OVERRIDING MEMBER PROCEDURE THIS_PROC )
CREATE TYPE DEMO_T2 UNDER DEMO_ST
( OVERRIDING MEMBER PROCEDURE THIS_PROC )
CREATE TYPE BODY DEMO_T1 AS
OVERRIDING MEMBER PROCEDURE THIS_PROC AS
BEGIN
DBMS_OUTPUT.PUT_LINE('DEMO_T1');
END;
END;
CREATE TYPE BODY DEMO_T2 AS
OVERRIDING MEMBER PROCEDURE THIS_PROC AS
BEGIN
DBMS_OUTPUT.PUT_LINE('DEMO_T2');
END;
END;
CREATE OR REPLACE PROCEDURE DEMO_PRC ( P_OBJ DEMO_ST) AS
V_OBJ DEMO_ST := P_OBJ;
BEGIN
V_OBJ.THIS_PROC;
END;
-- TAKES AN OBJECT, NOT A PROCEDURE PER SE
-- BUT ALLOWS THE PROCEDURE TO BE PASSED WRAPPED IN AN
-- OBJECT
BEGIN
DEMO_PRC( DEMO_T1(1) );
DEMO_PRC( DEMO_T2(1) );
END;
DEMO_T1
DEMO_T2I believe that this is superior to the passing of function wrapped procedures as arguments because it is according to the intention of object orientation, whereas wrapping a procedure in a function is contrarty to the principles of good functional programming. Good practise in functional programming is to return a single strongly typed result, and produce no side effects. Since the procedure wrapped in a function is a procedure, it therefore implicitly have side effects. -
Embedded swf not playing in Captivate 4
Hi - I have embedded a flash authored swf into CP4, it is published from flash as a ver 9 swf. I am using Flash Player 10 on the PC. It's a single frame swf and contains AS3 code to make a simple rollover image popup (further development is planned but just testing for now). It works when viewed standalone in a browser or with the flash player
In CP4 when played by either previewing it or by publishing and viewing in a browser, the screen with that swf on it is a 'white screen of death'. I have tried the following:
1. clicking and unclicking synchronise with project
2. click and unclick externalize animations check box in prefs - the swf file was also manually copied over to the publish directory
3. set display for "duration of animation"..also tried 'rest of slide' and 'specific time'
4. click and unclick - 'synchronise with project'
5. Set Actionscript Version in prefs to "AS3"
6. I placed another different swf (flash ver9) onto the following slide in CP4 - this one with no Actionscript content at all - just a simple timeline based motion tween. It works!
Does anyone know if CP4 cannot accept embedded swf's with Actionscript 3 code in them?Hi there
Oftentimes the warning about referencing Root is simply a nuisance and may be totally ignored.
I find that the animation works here on my own PC if I click Edit > Preferences... > Project node > Publish Settings node and configure for AS3.
Perhaps try that?
Cheers... Rick
Click here for Adobe Certified Captivate and RoboHelp HTML Training
Click here for the SorcerStone Blog
Click here for RoboHelp and Captivate eBooks -
How can I pass a variable(s) between two swfs?
Hello all,
I was wondering if it is possible to pass variables between
two standalone swfs that are not being hosted on a webserver.
I am creating a flash projector to go on a CD Rom and want to
load another swf into the _root level and in the process, want to
pass a variable or two to the "new" swf that is being loaded. Any
help or insights that you can offer would be greatly appreciated!
Thanks for your help.
Timif by _root level you mean you're loading something into
_level0 you can't won't be able to use the localconnection. the
sharedobject is your only option. -
How to playback an embedded swf in a Captivate project
Hello,
I generated a swf file from one captivate project and am embedding it into another. When I play back the slide that has the imported animation the playback from the slide and the imported swf are different. If I pause the main slide playback the swf continues and vice versa. How do I get the playback of the imported swf file to be controlled by the main playback controls? I am using Cpativate 4.
Thank you in advanceHi there
I'm hoping one of the Captivate team members picks up on this one and either confirms or denys my findings.
It is my understanding that one cannot control the other. Likely you may want to simply insert a Click Box or Button on the slide with the SWF and allow the user to move on when they are ready after having interacted with the SWF.
You may wish to experiment with the properties of the embedded SWF. There is an option called "Synchronize with project". But I'm doubtful it will work to accomplish what you want. I think what this option does is to ensure that if the timing of the slide is different than the SWF inside, it will play the SWF in its entirety.
Cheers... Rick
Helpful and Handy Links
Captivate Wish Form/Bug Reporting Form
Adobe Certified Captivate Training
SorcerStone Blog
Captivate eBooks -
Child.swf to pass two variables to parent in global function
Hi, I have a parent.swf and wish to load a varying child.swf as a sub-menu. How do I establish a global function that will allow the child.swf to pass back two variables (storyName & storyType) to the parent and kick off a task.
The submenu (swf) items will change so I cannot explicitly add a listener to a child.button. The submenu is on a children’s library so will have numerous graphics and movieclips included so I don’t think it would be suitable to simply call xml data to build a menu at runtime (at my level of knowledge). There will be a number of child.swf depending on books available.
I am not familiar with package { and public class { etc...
In as2 I would have used a _global.function() and used that to pass the variables back to the parent and then start a parent.action.
Totally new to AS3, suggestions appreciated. I have no problem loading the child.swf.Hi Ned, thank you for your response. I don’t know if it is relevant, but the container clip is run via AIR. That seems to affect some things as I’ve lost fullscreen functionality somewhere.
I tried you suggestions, if I have translated it into place correctly I don’t know. Do I need to treat the parent.parent as a variable (yes this one is done via a loader) ?
I get an error if I leave the function call open, I can tell I’m getting into the call as the trace on each side is happening.
In the External Movie:
blob_b.addEventListener(MouseEvent.CLICK, ms_bF);
function MbRemEL(nameof:String):void {
blob_b.removeEventListener(MouseEvent.CLICK, ms_bF);
function ms_bF(event:MouseEvent):void {
var m_ar:Array = new Array();
m_ar=event.target.name.split("_");
MbRemEL("r");
trace("StoryMenu: "+event.target.name);
if (this.parent.parent != null){
MovieClip(parent.parent).story = event.target.name;
//MovieClip(parent.parent).gcr(event.target.name);
// = TypeError: Error #1006: gcr is not a function.
MovieClip(parent.parent).gotoAndStop("g_home");
In Container Movie:
function gcr(stry:String):void{
trace("gcr: "+stry);
Maybe you are looking for
-
My iPhone isnt allowing me to sync music from my iTunes library
I'm not very tech savvy, but I have never had any trouble with my devices like mp3 players, Ipods, phones etc. however, not it seems that I cannot manage my phone's music, whether that be adding or removing music. I can see what is on my phone when I
-
Splitting multiple IDoc XML files into single IDoc messages for R/3
Hi all. I have a problem splitting IDoc XML files coming in to XI. I currently have an interface that takes in single store sale IDoc transactions (type WPUBON01) in an IDoc XML file. I then have some complex graphical mapping on the IDoc before send
-
No of columns in a table and SQL performance
How does the table size effects sql performance? I am comparing 2 tables , with same number of rows(54 million rows) , table1(columns a,b,c,d,e,f..) has 40 columns table2 (columns (a,b,c,d) SQL uses columns a,b. SQL using table2 runs in 1 sec. SQL us
-
How can i tell what caused a message to go to the exception queue. For instance say i have a message that has reached its expiration period and goes to the exception queue how would i be able to find out that the reason it went to the exception queue
-
I have created a connection to a sample XML file and was wondering how you would go about reading from that data source and storing the data using JavaScript so that different data can be displayed based on user choices (e.g. dropdown list)? Can this