Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Captivate 7 - Show/Hide problem

Explorer ,
Dec 08, 2016 Dec 08, 2016

Hello,

I'm using Captivate 7 on Windows 7.

I have a question regarding this slide:

Captivate.png

If you click on any of the orange boxes there is an advanced action that opens a URL, assigns a variable with a number and then hides an object (the orange box, there is a grey behind it so the user knows which buttons he/she has clicked). This works just fine, the URL opens and the orange box is hidden.

The thing is that I want the "Summary" box to show when the user has clicked all orange boxes, until then it should be hidden. This does not work. I have "Conditional advanced action" on the slide itself saying to show "Summary" when variables 1-13 are correct so to speak. It works if I click all the orange boxes and then click back and then forward again. I assume this is because the "On enter" script is only read on entering the slide.

Does anyone have an idea on solving this? Let me know if you need any more information.

Thanks you in advance.

Best regards,

Patrik

674
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

LEGEND , Dec 08, 2016 Dec 08, 2016

You need to combine the present standard advanced action, triggered by the buttons, with the conditional action from the On Enter event in one conditional action with two decisions:

First decision 'Always' is a mimicked standard action because of the condition that always results in True:

   IF 1 is equal to 1

     Assign v_one with 1        v_one being the Boolean variable associated with this button

      Open....

      Hide....

Second decision 'CheckVars' checks the value of all the variables and s

...
Translate
Community Expert ,
Dec 08, 2016 Dec 08, 2016

What you are trying to do is a very common use case.

Take a look at this video tutorial:

Create a Dynamic Menu Slide in Adobe Captivate | Infosemantics Pty Ltd

It explains how to create a dynamic menu slide where a hidden button is shown after all other buttons on the slide have been seen.

Note that the Conditional Action that hides or shows the relevant feedback objects on the slides is executed in this case by the On Enter Slide event.  However, in your case, if the user is remaining on the same slide while clicking all these buttons then each of the buttons needs to execute a similar Conditional Action that has a final decision block to check whether all buttons have been clicked and if so will show the final hidden button.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 08, 2016 Dec 08, 2016

Hello RodWard,

Thank you for the reply. I had a brief look at your video/s and understand what you mean. In your case you went to another slide when clicking the buttons, that works for me as well. In my case the user will stay at the one slide the whole time.

Could you please describe your solution for that case a bit more? Please see my answer to "Lilybiri" in this thread as well if that helps you in any way.

Best regards,

Patrik

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Dec 08, 2016 Dec 08, 2016

You need to combine the present standard advanced action, triggered by the buttons, with the conditional action from the On Enter event in one conditional action with two decisions:

First decision 'Always' is a mimicked standard action because of the condition that always results in True:

   IF 1 is equal to 1

     Assign v_one with 1        v_one being the Boolean variable associated with this button

      Open....

      Hide....

Second decision 'CheckVars' checks the value of all the variables and shows the Summary if all are equal to 1

    IF v_one is equal to 1    AND

        v_two is equal to 1   AND

        ....

        v_last is equal to 1

    Show Summary

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 08, 2016 Dec 08, 2016

Hello Lilybiri,

Thank you for the reply.

I'm pretty sure your suggestion is what I have in place and which didn't work. Please have a look and confirm if I misunderstood you.

On the slide I have an advanced action "on Enter".

It looks like this:

C1.png

C2.png

Y1 being the variable and X1 being the name of the corresponding orange box.

I then have an action when all the variables are assigned and the orange boxes are hidden that looks like this:

C3.png

You can't see all variables but I assure you they're there Y1-Y13 (13 orange boxes). When all are assigned the Summary box and button should be shown and enabled. Is this what you meant?

Best regards,

Patrik

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Dec 09, 2016 Dec 09, 2016

You misunderstood indeed.  May I summarize what my idea was about your use case:

  1. When a button is clicked, the orange cover has to be hidden, a user variable associated with that button has to be toggled from 0 to an URL has to open. Once an object is hidden, it remains hidden. I don't see why you need that On Enter action at all. Even if the user leaves that slide and re-enters it is superfluous since the orange cover has alread been hidden by clicking the button.
  2. Once all buttons have been clicked something (Summarize) has to be made visible.

You need only to use the Success events of the buttons, nothing else. For those buttons you need that conditional action with only TWO decisions which I described above.  You need such an action for each button, use the Duplicate action button to create them. The duplicates have to be edited, but editing is limited to the first decision 'Always': you will have to replace the variable, the name of the box to hide, the name of the URL to open. The second decision 'CheckVars' is identical for each button. The result will be that once the last button is clicked, the second decision will be correct and 'Summarize' will be shown.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 09, 2016 Dec 09, 2016

Thank you again for the reply.

I tested your solution but I still can't get the Summary button to show. All orange boxes are hidden and the URL opens just fine.

Please see attached pictures if I missed something.

C4.png

C5.png

C6.png

C7.png

Together with this I added Hide "Summary" on the "On Enter" of the slide. Otherwise it was visible.

Best regards,

Patrik

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Dec 09, 2016 Dec 09, 2016

Please, follow my instructions literally.

First of all you inversed the decisions. Always has to be the FIRST decision, not the second one. Sequence is very important in advanced actions.

No need for an ELSE part in any decision, I didn't mention any ELSE part. All solutions I post on this forum have been double-checked mutliple times. Where did you find the description of the ELSE parts? Did I talk about them. Adding the Continue means that you are releasing the playhead. It doesn't hurt here because for the Always decision the condition is always True, the Else part will never be done but has no sense at all.

The ELSE par for CheckVars will be done often, has no sense neither. To save time in the future, please try to screen tutorials about advanced actions, you are missing the logic in this case.

I supposed that you had the Summarize invisible in output, that was such a basic information. You can Hide it with the On Enter event, but the drawback is that it will be again hidden when the user revisits the slide. Is that what you want?

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 09, 2016 Dec 09, 2016

Wow. No need for the attitude. Sorry if I missed something in your description, we can't all be Captivate geniuses

I just wanted to add all information so nothing would've been missed.

I will try your solution literally and let you now if it works.

Thank you in advance.

Best regards,

Patrik

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 09, 2016 Dec 09, 2016

Hello again,

I followed your solution literally and it worked fantastically. Thank you so much for the help. Again I mean absolutely no harm when questioning you solution, there was obviously a reason for it not to work. My advice for you would be to work on your communication skills though. We are asking the community for a reason and no one gains anything by being rude to each other.

Have a nice day.

Best regards,

Patrik

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Dec 09, 2016 Dec 09, 2016
LATEST

Can you please read all my answers? I explained every detail, and multiple times you just did something else. I spent a lot of time trying to explain your use case instead of pointing to one of my blog posts, because similar use cases are everywhere. If you didn't understand the explanation, you just did something totally different: attaching the script to another event, switching the sequence of the decisions, adding commands in a part (ELSE) which I never mentioned at all. I asked questions, that were not answered. It seemed to be the only way to have your use case working, by emphasizing to follow the steps as I described them. It saved time for you and for me. THis type of question and answer is everywhere on the forum, but always in a slightly different use case. That is the reason why I wrote the solution out for your use case.

When you changed the decision sequence, the consequence was that the variable of the last button was not toggled before you checked all variables. This is logical, no?

When you added ELSE parts,  in this case you didn't screw up the work flow because the first ELSE part is never done, it is only adding some computing time. The second ELSE part is doing commands that are already set that way. Could you explain what the purpose was of those ELSE parts?

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources
Help resources