Inline for calling feedback screen in unreferenced objects

Peter Quain pquain at une.edu.au
Fri Sep 11 13:14:22 UTC 2009


Not sure I understand what the problem is, but maybe try something 
like this to set the FeedBack text?:

Dim urrt, uracc As Single
urrt = c.GetAttrib "BlockRTP"
uracc = c.GetAttrib "BlockAccuracyP"
Dim str1, str2 As String
str1 = "Your Result: " & vbCrLf & vbCrLf & "Mean Reaction Time: " 
&  urrt & " ms"   & vbCrLf & vbCrLf
str2 = "Correctness: " &  uracc & "%"
TextDisplay2.Text =  str1 & str2

At 10:29 PM 11/09/2009, you wrote:

>Hi again,
>
>doing some more work on this strange E-Prime behaviour, I found out
>that every Inline, calling for an objects (no matter if elsewhere in
>the program or in unreferenced objects) will cause the object to show
>only the background and no text as long as some variable or attribute
>(in square brackets) is embedded in the text. So it seems to be a
>general problem. Still, maybe some of you know a solution...
>
>Tobias
>
>On 9 Sep., 20:38, Tobi <tobias... at gmail.com> wrote:
> > Dear colleagues,
> >
> > I am having a strange problem using an inline code that refers to a
> > TextDisplay in unreferenced objects.
> >
> > First I had a feedback TextDisplay between two blocklists (to show
> > mean performance after blocks) and it worked fine with these Inlines:
> >
> > (1. Summation reset)
> > Set g_theSummationP = New Summation
> > Set g_theSummationPRT = New Summation
> >
> > (2. summation each trial)
> > g_theSummationP.AddObservation mask2.Acc
> > g_theSummationPRT.AddObservation mask2.RT
> >
> > (3. variable setting)
> > c.SetAttrib "BlockAccuracyP", Format(CStr(CDbl(g_theSummationP.Mean *
> > 100)), "0.00")
> > c.SetAttrib "BlockRTP", Format(CStr(CDbl(g_theSummationPRT.Mean )),
> > "0.00")
> >
> > And then there was Feedback (TextDisplay) with this content:
> > "Your result:
> >
> > Mean Reaction Time:
> > [BlockRTP] ms
> >
> > Correctness:
> > [BlockAccuracyP]%"
> >
> > Well, that worked fine, I got feedback after each block. Now I wanted
> > Feedback more often, not only after blocklists, but after 48 trials.
> > So I used this Inline:
> >
> > If c.GetAttrib(c.GetAttrib("Running") & ".Sample")  MOD 48 = 0 Then
> >         c.SetAttrib "BlockAccuracyP", 
> Format(CStr(CDbl(g_theSummationP.Mean *
> > 100)), "0.00")
> >         c.SetAttrib "BlockRTP", Format(CStr(CDbl(g_theSummationPRT.Mean )),
> > "0.00")
> >         TextDisplay2.InputMasks.Add 
> Keyboard.CreateInputMask("{ANY}", "", CLng
> > (TextDisplay2.Duration), CLng("1"), ebEndResponseActionTerminate,
> > CLogical("Yes"), "", "", "ResponseMode:All ProcessBackspace:Yes")
> >         TextDisplay2.Run
> >         Set g_theSummationP = New Summation
> >         Set g_theSummationPRT = New Summation
> >         Set g_theSummationS = New Summation
> >         Set g_theSummationSRT = New Summation
> > End If
> >
> > TextDisplay was in unreferenced objects. I was already using this
> > "trick" to insert a break (break display in unreferenced objects) in
> > order to have a break every X trials, independent of blocks etc.
> >
> > Now what I get is that it is actually calling TextDisplay2 (which is
> > the feedback) but the screen is blank (that is no text, only
> > background can be seen). If I leave away the variables
> > [BlockAccuracyP] and [BlockRTP] it is working, though! Do I need to
> > specify variables in the inline when they are used in displays that
> > are in the unreferenced objects? If yes, how?
> >
> > Thank you very much for you patience and potential help!
> > Cheers,
> > Tobias
>

--~--~---------~--~----~------------~-------~--~----~
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