Progress bars and random selection question banks?

Jan 07, 2014

How can I insert a progress bar into a scene to show progress through a randomly-selected group of questions from a question bank in a quiz?

14 Replies
Leslie Fetzer

Hi Ashley, 

I have the same question as Lynn. While there are some creative examples of progress bars on the thread you provided, I still am unsure of how to account for the fact that there is a random pull of questions from my test bank. I would like to do something similar to this one, but again, how to account for the random pull of questions? 

Thank you!

Randall Sauchuck

Leslie (no the OTHER Leslie), In a nutshell you will need to create a graphic with several different states (one state for each question you will show). Then you need to create a number variable that will control which state is visible.

Steps:

First I create a variable (a number type variable) called "currentQuestion" make it equal to 0

Next I make a graphic (named "progressBar") that consists of a 50 x 50 pixel rectangle. I select it and choose Edit States. Since my quiz has 5 questions I create 5 states named "one" through "five". State "one" I leave exactly like the "Normal" state, State "two" I increase the width of the rectangle to 100px, State "three" the width is 150px and so on.   

Once the graphic is complete I copy and paste it onto each question slide in the pool.

For each slide in the pool I also add 6 triggers. 
  The first is "Add 1 to "currentQuestion" when timeline starts."  THIS MUST COME FIRST.
The next five are all almost the same:
   Change state of progressBar to "one" when timeline starts if "currentQuestion" == 1
   Change state of progressBar to "two" when timeline starts if "currentQuestion" == 2
   etc.. up to 5

 

That's really all there is to it. There are a couple of other items to keep in mind.

If you include a Previous button you must include a trigger to  Subtract 2 from "currentQuestion" BEFORE you go to the previous slide.

If you use the Retry or Reset Button on the Quiz Results slide you must add triggers to set the "currentQuestion" back to 0 Before moving to the beginning of the quiz.

Leslie Fetzer

Thanks Randall!

I have another idea. Maybe you could tell me if it's possible (and if so, how you would accomplish it)? 

I have a 25-question quiz. I'm following your directions to create a progress bar across the top that is essentially rectangles with the quiz question numbers. The rectangle with the corresponding question will be highlighted as it is drawn from the question bank. The additional piece I would like to do is have the rectangle for the question highlight only if an answer selection is made. My thought is this would allow the quiz taker to see what questions they need to return to before submitting the quiz all at once at the end. What do you think? Possible?

Thanks again!

Randall Sauchuck

This could be done fairly easily IF it weren't for the fact that the question bank is random. It could still be done but would require a whole slew of variables and triggers to track the status of each of the 25 markers (the variables would be named something like "question1Answered", "question2Answered" ETC).  

First instead of 1 progress bar you will need 25 separate marker objects with at least 2 states each.

Then you would need 25 variables (one to track the status of each marker). On timeline start of each question you would need 25 triggers to change the state of the marker based on the corresponding tracking variable (if "question5Answered == TRUE set status of marker5 to highlighted" -- or whatever you are calling the active state on the markers).

The complicated part comes when you need to determine WHICH variable you are changing to TRUE. You will need to add 25 triggers to the Submit button on each question. Each trigger would basically state "if currentQuestion == X, then set questionXAnswered to TRUE". 

So you are looking at adding 50 triggers at least to each slide. This is all in addition to the triggers and variables you already added.

Leslie Fetzer

Yes, I can see that this can quickly become a beast! I am also thinking I would need numerous additional states to show all of the possibilities of which questions were answered versus skipped. I love a challenge, but this one may be a bit much.

Thanks again for the solution to my initial question. I am well on my way to having that piece complete.

Randall Sauchuck

The more information you are trying to show, they more states and triggers you will need to add.

For example: You could start off with all 25 markers set to "Hidden". Then as you progress through the slides set all markers >= currentQuestion to "Normal". That's +25 triggers right there (but no additional states). This would show the current question but not the total and not if any had already been answered.

Now if you wanted all 25 visible but Disabled (to show the total) you would need to create that state for each. the initial state for each would be set to "disabled" and changed to "Normal" as above. Tracking via triggers would be the same as above.

BUT you ALSO want to track whether a question has been answered right? So that's another 25 triggers AFTER the 25 triggers to set the visibility or normal state. That's also another State added to each marker (Normal/Visited or Normal/Disabled/Visited)

AND if you want to show which is the CURRENTLY actively question that's another state and another 25 triggers. (Normal/Disabled/Visited/Current). So first you check to see if it is visible or enabled, then you check to see if it was previously answered, then you check it ifs the current question.

And you might ALSO need to track highestQuestionVisited too and use THAT to compare which questions markers should be shown/enabled (so you aren't disabling question markers you previously visited as you go back through the questions)

Leslie Fetzer

So...

I have created my states. I have created a variable "CurrentQuestion" and set to 1 using a trigger on the slide prior to the start of my question bank slides. I have then set the following triggers on my master slide.

"CurrentQuestion" to "add 1" when "timeline starts"
"CurrentQuestion" to "subtract 2" when "user clicks previous"
"CurrentQuestion" to "add 1" when "user clicks next"

I know that I next need to set a trigger for a change in state. My problem is what to select in the "when" field. I can't find any option that gives me the selection or allows an input for "currentquestion == 1." 

Thanks!

This discussion is closed. You can start a new discussion or contact Articulate Support.