multiple mouse reactions in one trial

Alexander a.assfalg at googlemail.com
Wed Jun 1 06:09:55 UTC 2011


Hello together,

I wanted to thank again for the helpful solutions!!

Greetings
Alexander


On 26 Mai, 18:06, David McFarlane <mcfar... at msu.edu> wrote:
> Alexander,
>
> Stock reminder:  1) I do not work for PST.  2)
> PST's trained staff takes any and all questions
> athttp://support.pstnet.com/e%2Dprime/support/login.asp
> , and they strive to respond to all requests in
> 24-48 hours -- this is pretty much their
> substitute for proper documentation, so make full
> use of it.  3) If you do get an answer from PST
> Web Support, please extend the courtesy of
> posting their reply back here for the sake of others.
>
> (And to Mich, hat's off for saying what I so often say.)
>
> That said, here is my take...
>
> As liw hinted, you could collect multiple mouse
> clicks for a single stimulus & input mask by
> making use of the InputMask.Responses property in
> inline code -- see that topic in the E-Basic Help
> facility, and the MultipleResponseCollection.es
> example in the PST Web Downloads area.  But to
> get the stimulus to change upon each response
> would take more work.  I think liw's approach
> using multiple objects may be easier to for a
> begginner, but if you don't mind diving in to a
> bunch of code then an alternative (and not
> necessarily better) approach would be to use the
> InputMask.Responses property along with the .Draw
> method of each of the various sub-objects on your
> stimulus Slide.  The VAS example from PST shows
> how to do something like this (note that their
> VAS example is *not* a VAS, it is a Likert
> scale!).  (And if you do resort to the PST
> examples, take them as only a starting point for
> coding ideas -- they have the virtue of providing
> actual working code, but beyond that the code is
> not a good model of good programming practices.)
>
> -- David McFarlane, Professional Faultfinder
> "For a successful technology, reality must take
> precedence over public relations, for nature
> cannot be fooled."  (Richard Feynman, Nobel prize-winning physicist)
>
> At 5/26/2011 06:21 AM Thursday, liwenna wrote:
>
>
>
>
>
>
>
> >hmmmz despite Michiels more educationally responsible answer I tried
> >to conjure something up for you.
>
> >I believe it's possible to record multiple responses during one show
> >of a slide... but you can't alter the slide while it's being shown.
> >You do want to change it (i.e. you want the clicked number to
> >disappear) so therefore you'll have to change the slide after each
> >response is given and then show it again.
>
> >One could use different slidestates to show 'the same slide' with
> >different appearances (i.e. a different number of text boxes) but..
> >you'd need 24 slidestates (4*3*2*1) while if I remember correctly,
> >only 12 are allowed, so that's not really an option.
>
> >What is?
>
> >Use a slide with four textboxes... each textbox will contain one
> >number, store the numbers in four attributes in a list (n1, n2, n3 or
> >whatever you like) and tell the four textboxes to find their 'text'
> >from these attributes by entering [n1], [n2], etc in the text fields.
> >By default the textboxes will be named text1, text2, text3 etc, which
> >is fine,  you could change their names, doesn't really matter. Enable
> >the mouse on the slide and set the end action to terminate, log the
> >response time.
>
> >On your trial procedure, directly after the slide place an inline
> >containing this code:
>
> >*******
> >If responsecount = 0 then c.setattrib "slidestarttime",
> >SLIDENAME.OnsetTime
>
> >'tell the program which slide we are talking about
> >         Set theState = SLIDENAME.States("Default")
>
> >'Was there a response?
> >         If SLIDENAME.InputMasks.Responses.Count > 0 Then
>
> >'Get the mouse response
> >                 Set theMouseResponseData =
> >CMouseResponseData(SLIDENAME.InputMasks.Responses(1))
>
> >'Determine string name of SlideImage or SlideText object at
> >'mouse click coordinates. Assign that value to strHit
> >                 strHit =
> >theState.HitTest(theMouseResponseData.CursorX,
> >theMouseResponseData.CursorY)
>
> >'if strHit remains empty, i.e. the mouseclick was not made on one of
> >the textboxes, then go back and show the slide again
> >                 if strHit = "" then goto backlabel
>
> >'keep a count of the number of responses given so far
> >                 Responsecount = responsecount +1
>
> >'log the name of the textbox that was clicked under response1,
> >response2, response3 etc, dependent on the value of responsecount
> >'log the responsetime for this response under response1.rt,
> >response2.rt, etc, also dependent on the value of responsecount.
> >Calculate the responsetime by subtracting the
> >'onsettime of the first showing of the slide (stored under
> >slidestarttime) from the timestamp of the new response
> >(SLIDENAME.RTTime).
> >                c.SetAttrib "response"& responsecount, strHit
> >                c.SetAttrib “response”& responsecount &“.rt”, SLIDENAME.RTTime
> >- c.getattrib ("slidestarttime")
>
> >'change the text of the textbox was clicked to nothing: ""
>
> >CSlideText(SLIDENAME.States(Slide1.ActiveState).Objects(strHit)).text=“”
>
> >'if less than 4 response have been given, go back to show the slide
> >again
> >                if responsecount <4 then goto backlabel
>
> >          End If
>
> >'reset the response counter for the next trial
> >Responsecount = 0
> >************
>
> >replace every instance of SLIDENAME with the actual name of your
> >slide. The variable responsecount should be created by writing the
> >line "dim responsecount as integer" (no "'s) on the user tab of the
> >script window. Place a label on the procedure right before your slide,
> >call it backlabel. This is a kind of 'marker', at the end of the code
> >the program will return to that 'place in the procedure' when it
> >encounter the line containing 'goto backlabel'.
>
> >So basically what it does is the following: it determines the name of
> >the textsubobject that was clicked on and stored this name under
> >'strHit'. If there is no value stored in strHit then the click was
> >made outside of the textbox areas and the program goes back to show
> >the slide again in it's current state. If that is not the case then
> >strHit is stored as the given response and so is the response time.
> >After that it replaces the text of the subjectobject with the name
> >that is stored under strHit (i.e. the box that was clicked on) with ""
> >which is... nothing. This way the clicked number will (hopefully :p)
> >disappear. It then goes back to backlabel and shows the slide again,
> >rinse and repeat until 4 responses have been given.
>
> >I haven't tested this code, it might be full of minor and/or major
> >errors.. but something like this should, generally speaking, work...
> >you could just give it a try ;)
>
> >especially this line might be problematic: c.SetAttrib “response”&
> >responsecount &“.rt”, SLIDENAME.RTTime - c.getattrib
> >("slidestarttime") .  If so then break it down into one line for the
> >calulations (create variable called erm... responsetime, then use a
> >line: responsetime = SLIDENAME.RTTime - c.getattrib ("slidestarttime")
> >followed by a separate line to log this value: c.SetAttrib "reponse"&
> >responsecount &".rt", responsetime .
>
> >Please le me know whether that works :)
>
> >Best,
>
> >liw
>
> >On May 26, 11:02 am, Michiel Spape <Michiel.Sp... at nottingham.ac.uk>
> >wrote:
> > > Hiya,
> > > The easy way would be to pay someone to code it for you!
>
> > > But, for anyone to help:
> > > - What is "little experience"? Have you read
> > the entire getting started guide and/or additional material (linked before)?
> > > - Where do you get stuck?
> > > Best,
> > > Mich
>
> > > Michiel Spapé
> > > Research Fellow
> > > Perception & Action group
> > > University of Nottingham
> > > School of Psychologywww.cognitology.eu
>
> > > -----Original Message-----
> > > From: e-prime at googlegroups.com
> > [mailto:e-prime at googlegroups.com] On Behalf Of Alexander
> > > Sent: 26 May 2011 07:36
> > > To: E-Prime
> > > Subject: multiple mouse reactions in one trial
>
> > > Hi all,
>
> > > I have little experience with eprime.
> > > I want to do an experiment in which four digits are presented
> > > simultaneous on the screen. These should be selected in ascending
> > > order with the mouse. For every mouse click the reaction time and the
> > > clicked off digit should be recorded. The digit already been selected
> > > should be hidden. The next trial with new digits should start only
> > > when all four digits have been clicked.
> > > For notes on how I can solve this in an easily way, I would be more
> > > than grateful.
>
> > > Best regards
> > > Alexander

-- 
You received this message because you are subscribed to the Google Groups "E-Prime" group.
To post to this group, send email to e-prime at googlegroups.com.
To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com.
For more options, visit this group at http://groups.google.com/group/e-prime?hl=en.



More information about the Eprime mailing list