Hello all,<div><br></div><div>I would just like to post a solution to this problem because I had difficulty finding it.</div><div><br></div><div>Just to clarify, the problem is this.  You have a slide object that collects input responses (e.g. TestSlide) with allowable response 'F' and 'J'.  Based on your List object (this presumably houses your stimuli and the correct responses), you have an attribute for correct responses (let's say "CorrectResp").  However, now let's say you have two similar experiments with two different Correct Responses.  In your List object, you might then have two attributes (CorrectResp1 and CorrectResp2).  Each attribute corresponds to a different experiment (say, Expt1 and Expt2).</div><div><br></div><div>In an inline (placed before the TestSlide runs), you need to change your 'Correct:' property of your TestSlide based upon which experiment is selected at startup.  One solution I came up with is as follows:</div><div><br></div><div>Select Case c.getattrib("Group")</div><div>    Case "Expt1"</div><div><div>        TestSlide.InputMasks.Add Keyboard.CreateInputMask("fj", <b>c.GetAttrib("CorrectResp1"</b>),_</div><div>        CLng(TestSlide.Duration), CLng("1"), ebEndResponseActionTerminate, CLogical("Yes"),_</div><div>        "", "", "ResponseMode:All ProcessBackspace:Yes")</div></div><div>    Case "Expt2"</div><div><div>        TestSlide.InputMasks.Add Keyboard.CreateInputMask("fj", <b>c.GetAttrib("CorrectResp2"</b>),_</div><div>        CLng(TestSlide.Duration), CLng("1"), ebEndResponseActionTerminate, CLogical("Yes"),_</div><div>        "", "", "ResponseMode:All ProcessBackspace:Yes")</div></div><div>    Case Else</div><div>        MsgBox "Set correct response Error!"</div><div>End Select</div><div><br></div><div>The only way I found out how to do to this was by inputing an attribute within the 'Correct: ' field on the TestSlide object.  I then generated the script, and searched for the line where E-Prime 'sets up' the Slide Object.  From my understanding, what this line actually does is create allowable responses (in this case a keyboard with keys 'f' and 'j'), correct attribute, sets the duration, and then sets up the rest of the properties.  This list is pretty much all of the properties for any given slide object.  The only way to change these properties directly is by using this inline, figuring out which property is which, and then making the adjustments accordingly.</div><div><br></div><div>There is also another way.  Instead of creating two attributes, you can have one "CorrectResp" attribute (this way, you will not need to use the above inline).  Then you will need an inline that says the following:</div><div><br></div><div>dim y as integer</div><div><br></div><div>For y = 1 to List1.Size</div><div>Select Case c.getattrib ("Group")</div><div>    Case "Expt1"</div><div>        If List1.getattrib("Stimulus") = "Property1" then</div><div>            List1.setattrib(y, "CorrectResp"), "F"</div><div>        Elseif List1.getattrib("Stimulus")="Property2" then</div><div>            List1.setattrib(y, "CorrectResp")="J"</div><div>        Else</div><div>            MsgBox "Set Correct Response Error Expt 1"</div><div><br></div><div>Then just repeat this for Case "Expt2"</div><div><br></div><div>You just need to place this before you run your testing procedure and set the TestSlide 'Correct: ' Property field to [CorrectResp].</div><div><br></div><div>I hope this helps.  If anyone else has more elegant solutions than this (this is admittedly basic), please feel free to post.</div><div><br></div><div>Caleb J. Picker</div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups "E-Prime" group.<br />
To post to this group, send email to e-prime@googlegroups.com.<br />
To unsubscribe from this group, send email to e-prime+unsubscribe@googlegroups.com.<br />

For more options, visit this group at http://groups.google.com/group/e-prime?hl=en.<br />