Page History: Status Screen
Compare Page Revisions
Page Revision: 2012/08/13 12:48
Description
The Status Screen has been developed to increse comfort of the experimenter. It allows the person running an experiement to observe (on an external screen) how far through a participant is, images that are on the participant screen (or the whole image of participant screen) and up-to-the-minute statistics relating to performance.
Practical Use
XAML code can define this screen's appearance and content at the level of the experiment in the code snippets. Read-only variables such as reaction time can be viewed in either text or graphical format, using XAML code to define both the graphical design and the content (the binding variables). See below for example code displaying an operator screen binding to a number of pre-defined variables such as reaction time (RT), current block and the outcome of each trial. These stats will be displayed in real time, in both text and graphical format.
Examples
Code | What it will do |
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/></Grid.ColumnDefinitions><Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="2*"/>
<RowDefinition Height="3*"/>
<RowDefinition Height="4*"/></Grid.RowDefinitions>
| This code will make a table containing two columns and four rows, which heights are related as 1/2/3/4. |
<Grid.ColumnDefinitions>
<ColumnDefinition Width="250"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="250"/></Grid.ColumnDefinitions><Grid.RowDefinitions>
<RowDefinition Height="200"/>
<RowDefinition Height="150"/>
<RowDefinition Height="200"/>
<RowDefinition Height="*"/></Grid.RowDefinitions>
| This code will make a table containing three columns and four rows. Left and right columns are 100 pixels width. Width of the central column is "*". It means that central column will fill all space left on the screen excluding the summery width of left and right columns. |
To put some element to the particular cell of the grid, row and column should be specified. It can be done by adding such properties to the element you want to place in the selected cell:
Grid.Column="particular column number" Grid.Row="particular row number"
Columns and rows numbers starts from zero number. So if you'd like to put selected element to the first column of the first row, you should add such properties to it:
Grid.Column="0" Grid.Row="0"
For example this code will put text element to the second column of the third row of the grid:
<TextBlock Grid.Column="1" Grid.Row="2" Text="2.3"
HorizontalAlignment="Left" FontFamily="Garamond"
FontSize="10" Foreground="Black"/>
| |
<UniformGrid Grid.Column="0" Grid.Row="2" Margin="5" Columns="5" Rows="2">
<TextBlock Text="Trial number"/>
<TextBlock Text="Is congruent?"/>
<TextBlock Text="Response code"/>
<TextBlock Text="RT"/>
<TextBlock Text="Is correct?"/>
<TextBlock Text="{Binding TrialNumber}"/>
<TextBlock Text="{Binding IsCongruentTrial}"/>
<TextBlock Text="{Binding ResponseCode}"/>
<TextBlock Text="{Binding RT}"/>
<TextBlock Text="{Binding IsCorrect}"/></UniformGrid>
| This code will add a table containing five columns and two rows to the first column of the third row of the grid. The former five elements (Text Blocks) will be put in the first row, the following five elements will be put to the second row. |