Assigning Button order

Hi everyone!

Do you happen to know how set it up so a user has to click a series of buttons in a correct order? Essentially, we don't want them to click to button 2 without having clicked button 1, and they can't click button 3 without having click button 2 type of thing.  I tried setting this up using variables and conditions, but this is not working

Any assistance you can provide would be a HUGE help!  Thank you!

8 Replies
Michael Hinze

I had answered a question a while ago on how to sequentially enable menu buttons. See an example here. It's not exactly what you want, but the same concept applies:

1. At the beginning of the slide, the state of all buttons except button#1 is disabled.

2. Clicking button#1, changes the state of button #2 to Normal.

3. Clicking button#2, changes the state of button #3 to Normal and so forth.  

Hope that gives you some ideas.

Kiko Yan
Michael Hinze

I had answered a question a while ago on how to sequentially enable menu buttons. See an example here. It's not exactly what you want, but the same concept applies:

1. At the beginning of the slide, the state of all buttons except button#1 is disabled.

2. Clicking button#1, changes the state of button #2 to Normal.

3. Clicking button#2, changes the state of button #3 to Normal and so forth.  

Hope that gives you some ideas.

Hi Michael,

I'm sorry to bother you here because I'm currently having the same problem.
There are 10 chapters in my menu, I need all the users to click in order from 1 to 10, and if they don't complete 1, they cannot click 2, and so on...
As you said, the first step is to disable all the buttons except button 1. How can I finish like this?
I tried so many times but it didn't work...Can you please share your experience with me? Thank you so much in advance!! :)

Walt Hamilton

There is a sample that does exactly what you are describing . It is attached to the first post in this discussion: https://community.articulate.com/discussions/articulate-storyline/free-sample-restricted-and-free-random-navigation-using-variables-and-triggers

Choose Restricted Navigation, and the buttons don't appear until the previous ones are clicked.

Walt Hamilton


I got home last night, and the cat insisted he had not been fed all day, and was STARVING. I hadn't been there all day, so I didn't know, and my wife was off to her quilting party, so I couldn't ask her. Fortunately, she left a note on the counter that said "I fed the cat", so I knew not to feed him again.
The note she left me is the variable. I couldn't see her feed the cat, but I could see the note and know what went on while I was gone. Storyline is just like I was. One slide has no way of knowing what happens on another slide, but it can read a message left for it in a variable, and know what you did while you were on another slide, provided the developer used your actions on that other slide to change the contents of a variable.
The cat got pretty insistent, so I gave him a snack, crossed out her message, and wrote, "He's also had a bedtime snack.", and went to my meeting.
The note is the variable. Everybody can see it, and it never changes unless you, the developer, create a trigger to change it.
My wife is getting older (I'm not, just she), and takes a bunch of medicines. She puts them in one of those little plastic gadgets with seven boxes. Every night, (if she remembers:) ) she looks in the box for that day. If it is empty, she knows she has taken her pills that day.
The pill box is the variable. She can't always remember everything, but if the box has pills in it, she knows to take them. SL's memory is much worse. If you click a button, it executes all the buttons associated with that click, and forgets you clicked it, unless the developer used that click to adjust a value in a variable.
So that's the purpose and use of variables; they transfer data from one spot in the project to another, whether separated from the spot of the creation of the data by time or distance (being on another slide). They are almost always used in the On Condition part of a trigger. For example, "Feed the cat When you come home if wife didn't" or Say "Happy Father's Day" When timeline on slide starts On Condition user clicked "I'm a father". They also are used as references to display information. For example, if the user has entered information in a variable (using a text input), you can tell them hi: "Hi there %UserName%".
The most important thing you will ever learn about variables is how to name them. Most beginners name them things like "var1", because they think they can save so much time and effort compared to using names like "UserName". Three weeks from now, they will have lost over 100 times that much time and effort trying to figure out what the difference is between "var15" and "var6". Give them name that instantly identify their purpose.
Variables are containers you can use to pass information around your project. There are no limits to what you do with it.

In this case, the variables tell the menu slide which sections have been completed, so it can change the state of the buttons.