﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Millisecond Forums » Millisecond Forums » Inquisit 6  » Can text's be clicked and detected?</title><generator>InstantForum 2017-1 Final</generator><description>Millisecond Forums</description><link>https://forums.millisecond.com/</link><webMaster>Millisecond Forums</webMaster><lastBuildDate>Mon, 09 Mar 2026 18:26:32 GMT</lastBuildDate><ttl>20</ttl><item><title>Can text's be clicked and detected?</title><link>https://forums.millisecond.com/Topic40894.aspx</link><description>Hello,&lt;br/&gt;on my study, I want to present two options to participants -- right now, in text form -- but would like to adjust the text based on the value of globals variabls (defined under values) that will change for each participant based on the scores obtained during a pre-callibration phase.&lt;br/&gt;&lt;br/&gt;I wonder if:&lt;br/&gt;&lt;br/&gt;1) the /items within a &amp;lt;text&amp;gt; can be dynamically modified based on the values of such global variables?&lt;br/&gt;2) can the /position defined within a &amp;lt;text&amp;gt; be modifed also? I would like to "randomize" the positions of the options between left and right at each trial.&lt;br/&gt;&lt;br/&gt;Below is some sample code of what I'm trying to do.&lt;br/&gt;&lt;br/&gt;3) On a related topic, is it possible to dynamically chance the /caption of &amp;lt;sureypage&amp;gt;?&lt;br/&gt;&lt;br/&gt;Any help would be greatly appreciated. Thanks a lot!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;&amp;lt;values&amp;gt;&lt;br/&gt;//xxx&lt;br/&gt;/ easyThresh50 = 8 //The number of boxes at the 50% level&lt;br/&gt;/ mediumThresh65 = 10 //The number of boxes at the 65% level&lt;br/&gt;/ mediumThresh80 = 13 //The number of boxes at the 80% level&lt;br/&gt;/ hardThresh95 = 15 //The number of boxes at the 95% level&lt;br/&gt;//yyy&lt;br/&gt;/ low_pay = 2 //Low reward&lt;br/&gt;/ medium_pay = 6 //Medium reward&lt;br/&gt;/ high_pay = 10 //High reward&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text rest_1_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;Rest&amp;lt;br&amp;gt;1 credit&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (20%, 50%)&lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text effort_n_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;xxx boxes&amp;lt;br&amp;gt;yyy credits&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (80%, 50%) &lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center &lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial bottomleftpractice&amp;gt;&lt;br/&gt;/ stimulustimes = [0=rest_1_cr, effort_n_cr]&lt;br/&gt;/inputdevice = mouse&lt;br/&gt;/timeout = 10000&lt;br/&gt;&amp;lt;/trial&amp;gt;</description><pubDate>Sun, 13 Jul 2025 07:53:57 GMT</pubDate><dc:creator>EN</dc:creator></item><item><title>RE: Can text's be clicked and detected?</title><link>https://forums.millisecond.com/Topic41356.aspx</link><description>&lt;blockquote data-id="41355" class="if-quote-wrapper" unselectable="on" data-guid="1752391902867" contenteditable="false" id="if_insertedNode_1752391902210"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41355" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41355" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41355" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 7/13/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41355"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41354" class="if-quote-wrapper" unselectable="on" data-guid="1752391902867" contenteditable="false" id="if_insertedNode_1752376584002"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41354" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41354" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41354" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/13/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41354"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41300" class="if-quote-wrapper" unselectable="on" data-guid="1752391902867" contenteditable="false" id="if_insertedNode_1752375543474"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41300" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41300" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41300" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/4/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41300"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41299" class="if-quote-wrapper" unselectable="on" data-guid="1752391902867" contenteditable="false" id="if_insertedNode_1751592839740"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41299" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41299" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41299" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 7/3/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41299"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41298" class="if-quote-wrapper" unselectable="on" data-guid="1752391902867" contenteditable="false" id="if_insertedNode_1751542344828"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41298" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41298" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41298" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/3/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41298"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40895" class="if-quote-wrapper" unselectable="on" data-guid="1752391902867" contenteditable="false" id="if_insertedNode_1751508863306"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40895" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40895" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40895" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40895"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40894" class="if-quote-wrapper" unselectable="on" data-guid="1752391902867" contenteditable="false" id="if_insertedNode_1750332338894"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40894" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40894" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40894" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40894"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;Hello,&lt;br/&gt;on my study, I want to present two options to participants -- right now, in text form -- but would like to adjust the text based on the value of globals variabls (defined under values) that will change for each participant based on the scores obtained during a pre-callibration phase.&lt;br/&gt;&lt;br/&gt;I wonder if:&lt;br/&gt;&lt;br/&gt;1) the /items within a &amp;lt;text&amp;gt; can be dynamically modified based on the values of such global variables?&lt;br/&gt;2) can the /position defined within a &amp;lt;text&amp;gt; be modifed also? I would like to "randomize" the positions of the options between left and right at each trial.&lt;br/&gt;&lt;br/&gt;Below is some sample code of what I'm trying to do.&lt;br/&gt;&lt;br/&gt;3) On a related topic, is it possible to dynamically chance the /caption of &amp;lt;sureypage&amp;gt;?&lt;br/&gt;&lt;br/&gt;Any help would be greatly appreciated. Thanks a lot!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;&amp;lt;values&amp;gt;&lt;br/&gt;//xxx&lt;br/&gt;/ easyThresh50 = 8 //The number of boxes at the 50% level&lt;br/&gt;/ mediumThresh65 = 10 //The number of boxes at the 65% level&lt;br/&gt;/ mediumThresh80 = 13 //The number of boxes at the 80% level&lt;br/&gt;/ hardThresh95 = 15 //The number of boxes at the 95% level&lt;br/&gt;//yyy&lt;br/&gt;/ low_pay = 2 //Low reward&lt;br/&gt;/ medium_pay = 6 //Medium reward&lt;br/&gt;/ high_pay = 10 //High reward&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text rest_1_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;Rest&amp;lt;br&amp;gt;1 credit&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (20%, 50%)&lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text effort_n_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;xxx boxes&amp;lt;br&amp;gt;yyy credits&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (80%, 50%) &lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center &lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial bottomleftpractice&amp;gt;&lt;br/&gt;/ stimulustimes = [0=rest_1_cr, effort_n_cr]&lt;br/&gt;/inputdevice = mouse&lt;br/&gt;/timeout = 10000&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40894"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;All of these things are possible. Since it's not at all obvious from your code snippet what exactly you want to do depending on what, it's not possible to give you an example on the basis of your code. Here are a few generic examples:&lt;br/&gt;(1) Randomizing on-screen positions of clickable elements every trial:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;(2) Piping variables into text items:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&lt;br/&gt;/ trialType = null&lt;br/&gt;&lt;br/&gt;/ aPoints = 0&lt;br/&gt;/ bPoints = 0&lt;br/&gt;&lt;br/&gt;/ aHigh = 100&lt;br/&gt;/ bHigh = 80&lt;br/&gt;/ aLow = 20&lt;br/&gt;/ bLow = 40&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// determine trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.trialType = list.trialType.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// set winnings according to trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (values.trialType == "High") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b,c]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text c&amp;gt;&lt;br/&gt;/ items = ("Trial type: &amp;lt;%values.trialType%&amp;gt; reward.&lt;br/&gt;Option A: Chance to win &amp;lt;%values.aPoints%&amp;gt; points.&lt;br/&gt;Option B: Chance to win &amp;lt;%values.bPoints%&amp;gt; points.")&lt;br/&gt;/ position = (50%, 30%)&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list trialType&amp;gt;&lt;br/&gt;/ items = ("High", "Low")&lt;br/&gt;/ poolsize = 10&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;You can set the /caption of a surveyPage in the same way. Just pipe in the text you want via a variable you set.&lt;br/&gt;&lt;br/&gt;These things are all covered in the Programmer's Manual, too, so I would very much recommend working through it in full:&lt;br/&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf&lt;/a&gt;&lt;/a&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40895"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Dear Dave,&lt;br/&gt;&lt;br/&gt;thank you very much for providing sample-codes -- very helpful as usual!&lt;br/&gt;One question regarding the code "(1) Randomizing on-screen positions of clickable elements every trial:"&lt;br/&gt;I noticed that the clickable area seems to be the green region in the attached screenshot. I wonder if there is an easy way to augment the region to cover the word itself? Something like the area inside the blue-dotted rectangle?&lt;br/&gt;I checked the manual as you suggested but didn't find a mention to such a property/parameter. I thought one way to achieved that would be to insert a rectangle "under" the word and make the rectangle a validresponse?&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;img src="../Uploads/Images/78cb48e5-ec26-487c-92e5-96b5.png" data-download-url="../Uploads/Images/170d8f72-636f-4763-b27c-6d97.png" id="if_insertedNode_1751518164882"&gt;&lt;br/&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="41298"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Just set the respective &amp;lt;text&amp;gt; elements' /size to whatever you need. Here you can see the bounding rectangle defined by /size by setting a /txBgColor.&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;    // pick random postion for option A&lt;br/&gt;    values.aX = list.x.nextValue;&lt;br/&gt;    // pick position for option B&lt;br/&gt;    values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;a class="if-quote-goto quote-link" href="#" data-id="41299"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;This is awesome, thanks Dave!&lt;br/&gt;Best,&lt;br/&gt;EN&lt;a class="if-quote-goto quote-link" href="#" data-id="41300"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Hello Dave,&lt;br/&gt;&lt;br/&gt;I wonder if there is a way to make the entire gray rectangle clickable when using &amp;lt;text&amp;gt; stimulus? (see attached image).&lt;br/&gt;In the sample code you provided, it looks like any point within the gray rectangle but outside the green boundary is not clickable?&lt;br/&gt;Thanks a lot in advance, as usual!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;&lt;img src="../Uploads/Images/4a21d379-5e1c-493e-9543-7803.png" data-download-url="../Uploads/Images/4ee1ff31-46b4-4eb8-ae35-bfd0.png" id="if_insertedNode_1752375559452"&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="41354"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;The entire area defined by /size is clickable. I don't know why you think otherwise.&lt;a class="if-quote-goto quote-link" href="#" data-id="41355"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;I noticed that the gray area outside the green boundary does not respond to mouse clicks when running the sample code in Inquisit 7.0.3 for Mac. &lt;br/&gt;However, when I&amp;nbsp;ran the same code using Inquisit Player 6, the entire gray area was clickable, like you said.&lt;br/&gt;&lt;br/&gt;EN</description><pubDate>Sun, 13 Jul 2025 07:53:57 GMT</pubDate><dc:creator>EN</dc:creator></item><item><title>RE: Can text's be clicked and detected?</title><link>https://forums.millisecond.com/Topic41355.aspx</link><description>&lt;blockquote data-id="41354" class="if-quote-wrapper" unselectable="on" data-guid="1752376584501" contenteditable="false" id="if_insertedNode_1752376584002"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41354" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41354" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41354" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/13/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41354"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41300" class="if-quote-wrapper" unselectable="on" data-guid="1752376584501" contenteditable="false" id="if_insertedNode_1752375543474"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41300" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41300" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41300" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/4/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41300"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41299" class="if-quote-wrapper" unselectable="on" data-guid="1752376584501" contenteditable="false" id="if_insertedNode_1751592839740"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41299" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41299" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41299" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 7/3/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41299"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41298" class="if-quote-wrapper" unselectable="on" data-guid="1752376584501" contenteditable="false" id="if_insertedNode_1751542344828"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41298" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41298" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41298" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/3/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41298"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40895" class="if-quote-wrapper" unselectable="on" data-guid="1752376584501" contenteditable="false" id="if_insertedNode_1751508863306"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40895" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40895" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40895" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40895"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40894" class="if-quote-wrapper" unselectable="on" data-guid="1752376584501" contenteditable="false" id="if_insertedNode_1750332338894"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40894" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40894" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40894" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40894"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;Hello,&lt;br/&gt;on my study, I want to present two options to participants -- right now, in text form -- but would like to adjust the text based on the value of globals variabls (defined under values) that will change for each participant based on the scores obtained during a pre-callibration phase.&lt;br/&gt;&lt;br/&gt;I wonder if:&lt;br/&gt;&lt;br/&gt;1) the /items within a &amp;lt;text&amp;gt; can be dynamically modified based on the values of such global variables?&lt;br/&gt;2) can the /position defined within a &amp;lt;text&amp;gt; be modifed also? I would like to "randomize" the positions of the options between left and right at each trial.&lt;br/&gt;&lt;br/&gt;Below is some sample code of what I'm trying to do.&lt;br/&gt;&lt;br/&gt;3) On a related topic, is it possible to dynamically chance the /caption of &amp;lt;sureypage&amp;gt;?&lt;br/&gt;&lt;br/&gt;Any help would be greatly appreciated. Thanks a lot!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;&amp;lt;values&amp;gt;&lt;br/&gt;//xxx&lt;br/&gt;/ easyThresh50 = 8 //The number of boxes at the 50% level&lt;br/&gt;/ mediumThresh65 = 10 //The number of boxes at the 65% level&lt;br/&gt;/ mediumThresh80 = 13 //The number of boxes at the 80% level&lt;br/&gt;/ hardThresh95 = 15 //The number of boxes at the 95% level&lt;br/&gt;//yyy&lt;br/&gt;/ low_pay = 2 //Low reward&lt;br/&gt;/ medium_pay = 6 //Medium reward&lt;br/&gt;/ high_pay = 10 //High reward&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text rest_1_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;Rest&amp;lt;br&amp;gt;1 credit&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (20%, 50%)&lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text effort_n_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;xxx boxes&amp;lt;br&amp;gt;yyy credits&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (80%, 50%) &lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center &lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial bottomleftpractice&amp;gt;&lt;br/&gt;/ stimulustimes = [0=rest_1_cr, effort_n_cr]&lt;br/&gt;/inputdevice = mouse&lt;br/&gt;/timeout = 10000&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40894"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;All of these things are possible. Since it's not at all obvious from your code snippet what exactly you want to do depending on what, it's not possible to give you an example on the basis of your code. Here are a few generic examples:&lt;br/&gt;(1) Randomizing on-screen positions of clickable elements every trial:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;(2) Piping variables into text items:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&lt;br/&gt;/ trialType = null&lt;br/&gt;&lt;br/&gt;/ aPoints = 0&lt;br/&gt;/ bPoints = 0&lt;br/&gt;&lt;br/&gt;/ aHigh = 100&lt;br/&gt;/ bHigh = 80&lt;br/&gt;/ aLow = 20&lt;br/&gt;/ bLow = 40&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// determine trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.trialType = list.trialType.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// set winnings according to trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (values.trialType == "High") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b,c]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text c&amp;gt;&lt;br/&gt;/ items = ("Trial type: &amp;lt;%values.trialType%&amp;gt; reward.&lt;br/&gt;Option A: Chance to win &amp;lt;%values.aPoints%&amp;gt; points.&lt;br/&gt;Option B: Chance to win &amp;lt;%values.bPoints%&amp;gt; points.")&lt;br/&gt;/ position = (50%, 30%)&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list trialType&amp;gt;&lt;br/&gt;/ items = ("High", "Low")&lt;br/&gt;/ poolsize = 10&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;You can set the /caption of a surveyPage in the same way. Just pipe in the text you want via a variable you set.&lt;br/&gt;&lt;br/&gt;These things are all covered in the Programmer's Manual, too, so I would very much recommend working through it in full:&lt;br/&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf&lt;/a&gt;&lt;/a&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40895"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Dear Dave,&lt;br/&gt;&lt;br/&gt;thank you very much for providing sample-codes -- very helpful as usual!&lt;br/&gt;One question regarding the code "(1) Randomizing on-screen positions of clickable elements every trial:"&lt;br/&gt;I noticed that the clickable area seems to be the green region in the attached screenshot. I wonder if there is an easy way to augment the region to cover the word itself? Something like the area inside the blue-dotted rectangle?&lt;br/&gt;I checked the manual as you suggested but didn't find a mention to such a property/parameter. I thought one way to achieved that would be to insert a rectangle "under" the word and make the rectangle a validresponse?&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;img src="../Uploads/Images/78cb48e5-ec26-487c-92e5-96b5.png" data-download-url="../Uploads/Images/170d8f72-636f-4763-b27c-6d97.png" id="if_insertedNode_1751518164882"&gt;&lt;br/&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="41298"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Just set the respective &amp;lt;text&amp;gt; elements' /size to whatever you need. Here you can see the bounding rectangle defined by /size by setting a /txBgColor.&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;    // pick random postion for option A&lt;br/&gt;    values.aX = list.x.nextValue;&lt;br/&gt;    // pick position for option B&lt;br/&gt;    values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;a class="if-quote-goto quote-link" href="#" data-id="41299"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;This is awesome, thanks Dave!&lt;br/&gt;Best,&lt;br/&gt;EN&lt;a class="if-quote-goto quote-link" href="#" data-id="41300"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Hello Dave,&lt;br/&gt;&lt;br/&gt;I wonder if there is a way to make the entire gray rectangle clickable when using &amp;lt;text&amp;gt; stimulus? (see attached image).&lt;br/&gt;In the sample code you provided, it looks like any point within the gray rectangle but outside the green boundary is not clickable?&lt;br/&gt;Thanks a lot in advance, as usual!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;&lt;img src="../Uploads/Images/4a21d379-5e1c-493e-9543-7803.png" data-download-url="../Uploads/Images/4ee1ff31-46b4-4eb8-ae35-bfd0.png" id="if_insertedNode_1752375559452"&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="41354"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;The entire area defined by /size is clickable. I don't know why you think otherwise.</description><pubDate>Sun, 13 Jul 2025 03:16:58 GMT</pubDate><dc:creator>Dave</dc:creator></item><item><title>RE: Can text's be clicked and detected?</title><link>https://forums.millisecond.com/Topic41354.aspx</link><description>&lt;blockquote data-id="41300" class="if-quote-wrapper" unselectable="on" data-guid="1752375544101" contenteditable="false" id="if_insertedNode_1752375543474"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41300" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41300" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41300" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/4/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41300"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41299" class="if-quote-wrapper" unselectable="on" data-guid="1752375544101" contenteditable="false" id="if_insertedNode_1751592839740"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41299" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41299" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41299" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 7/3/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41299"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41298" class="if-quote-wrapper" unselectable="on" data-guid="1752375544101" contenteditable="false" id="if_insertedNode_1751542344828"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41298" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41298" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41298" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/3/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41298"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40895" class="if-quote-wrapper" unselectable="on" data-guid="1752375544101" contenteditable="false" id="if_insertedNode_1751508863306"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40895" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40895" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40895" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40895"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40894" class="if-quote-wrapper" unselectable="on" data-guid="1752375544101" contenteditable="false" id="if_insertedNode_1750332338894"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40894" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40894" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40894" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40894"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;Hello,&lt;br/&gt;on my study, I want to present two options to participants -- right now, in text form -- but would like to adjust the text based on the value of globals variabls (defined under values) that will change for each participant based on the scores obtained during a pre-callibration phase.&lt;br/&gt;&lt;br/&gt;I wonder if:&lt;br/&gt;&lt;br/&gt;1) the /items within a &amp;lt;text&amp;gt; can be dynamically modified based on the values of such global variables?&lt;br/&gt;2) can the /position defined within a &amp;lt;text&amp;gt; be modifed also? I would like to "randomize" the positions of the options between left and right at each trial.&lt;br/&gt;&lt;br/&gt;Below is some sample code of what I'm trying to do.&lt;br/&gt;&lt;br/&gt;3) On a related topic, is it possible to dynamically chance the /caption of &amp;lt;sureypage&amp;gt;?&lt;br/&gt;&lt;br/&gt;Any help would be greatly appreciated. Thanks a lot!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;&amp;lt;values&amp;gt;&lt;br/&gt;//xxx&lt;br/&gt;/ easyThresh50 = 8 //The number of boxes at the 50% level&lt;br/&gt;/ mediumThresh65 = 10 //The number of boxes at the 65% level&lt;br/&gt;/ mediumThresh80 = 13 //The number of boxes at the 80% level&lt;br/&gt;/ hardThresh95 = 15 //The number of boxes at the 95% level&lt;br/&gt;//yyy&lt;br/&gt;/ low_pay = 2 //Low reward&lt;br/&gt;/ medium_pay = 6 //Medium reward&lt;br/&gt;/ high_pay = 10 //High reward&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text rest_1_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;Rest&amp;lt;br&amp;gt;1 credit&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (20%, 50%)&lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text effort_n_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;xxx boxes&amp;lt;br&amp;gt;yyy credits&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (80%, 50%) &lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center &lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial bottomleftpractice&amp;gt;&lt;br/&gt;/ stimulustimes = [0=rest_1_cr, effort_n_cr]&lt;br/&gt;/inputdevice = mouse&lt;br/&gt;/timeout = 10000&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40894"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;All of these things are possible. Since it's not at all obvious from your code snippet what exactly you want to do depending on what, it's not possible to give you an example on the basis of your code. Here are a few generic examples:&lt;br/&gt;(1) Randomizing on-screen positions of clickable elements every trial:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;(2) Piping variables into text items:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&lt;br/&gt;/ trialType = null&lt;br/&gt;&lt;br/&gt;/ aPoints = 0&lt;br/&gt;/ bPoints = 0&lt;br/&gt;&lt;br/&gt;/ aHigh = 100&lt;br/&gt;/ bHigh = 80&lt;br/&gt;/ aLow = 20&lt;br/&gt;/ bLow = 40&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// determine trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.trialType = list.trialType.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// set winnings according to trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (values.trialType == "High") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b,c]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text c&amp;gt;&lt;br/&gt;/ items = ("Trial type: &amp;lt;%values.trialType%&amp;gt; reward.&lt;br/&gt;Option A: Chance to win &amp;lt;%values.aPoints%&amp;gt; points.&lt;br/&gt;Option B: Chance to win &amp;lt;%values.bPoints%&amp;gt; points.")&lt;br/&gt;/ position = (50%, 30%)&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list trialType&amp;gt;&lt;br/&gt;/ items = ("High", "Low")&lt;br/&gt;/ poolsize = 10&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;You can set the /caption of a surveyPage in the same way. Just pipe in the text you want via a variable you set.&lt;br/&gt;&lt;br/&gt;These things are all covered in the Programmer's Manual, too, so I would very much recommend working through it in full:&lt;br/&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf&lt;/a&gt;&lt;/a&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40895"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Dear Dave,&lt;br/&gt;&lt;br/&gt;thank you very much for providing sample-codes -- very helpful as usual!&lt;br/&gt;One question regarding the code "(1) Randomizing on-screen positions of clickable elements every trial:"&lt;br/&gt;I noticed that the clickable area seems to be the green region in the attached screenshot. I wonder if there is an easy way to augment the region to cover the word itself? Something like the area inside the blue-dotted rectangle?&lt;br/&gt;I checked the manual as you suggested but didn't find a mention to such a property/parameter. I thought one way to achieved that would be to insert a rectangle "under" the word and make the rectangle a validresponse?&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;img src="../Uploads/Images/78cb48e5-ec26-487c-92e5-96b5.png" data-download-url="../Uploads/Images/170d8f72-636f-4763-b27c-6d97.png" id="if_insertedNode_1751518164882"&gt;&lt;br/&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="41298"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Just set the respective &amp;lt;text&amp;gt; elements' /size to whatever you need. Here you can see the bounding rectangle defined by /size by setting a /txBgColor.&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;    // pick random postion for option A&lt;br/&gt;    values.aX = list.x.nextValue;&lt;br/&gt;    // pick position for option B&lt;br/&gt;    values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;a class="if-quote-goto quote-link" href="#" data-id="41299"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;This is awesome, thanks Dave!&lt;br/&gt;Best,&lt;br/&gt;EN&lt;a class="if-quote-goto quote-link" href="#" data-id="41300"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Hello Dave,&lt;br/&gt;&lt;br/&gt;I wonder if there is a way to make the entire gray rectangle clickable when using &amp;lt;text&amp;gt; stimulus? (see attached image).&lt;br/&gt;In the sample code you provided, it looks like any point within the gray rectangle but outside the green boundary is not clickable?&lt;br/&gt;Thanks a lot in advance, as usual!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;&lt;img src="../Uploads/Images/4a21d379-5e1c-493e-9543-7803.png" data-download-url="../Uploads/Images/4ee1ff31-46b4-4eb8-ae35-bfd0.png" id="if_insertedNode_1752375559452"&gt;</description><pubDate>Sun, 13 Jul 2025 03:02:01 GMT</pubDate><dc:creator>EN</dc:creator></item><item><title>RE: Can text's be clicked and detected?</title><link>https://forums.millisecond.com/Topic41300.aspx</link><description>&lt;blockquote data-id="41299" class="if-quote-wrapper" unselectable="on" data-guid="1751592841604" contenteditable="false" id="if_insertedNode_1751592839740"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41299" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41299" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41299" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 7/3/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41299"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="41298" class="if-quote-wrapper" unselectable="on" data-guid="1751592841604" contenteditable="false" id="if_insertedNode_1751542344828"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41298" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41298" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41298" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/3/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41298"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40895" class="if-quote-wrapper" unselectable="on" data-guid="1751592841604" contenteditable="false" id="if_insertedNode_1751508863306"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40895" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40895" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40895" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40895"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40894" class="if-quote-wrapper" unselectable="on" data-guid="1751592841604" contenteditable="false" id="if_insertedNode_1750332338894"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40894" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40894" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40894" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40894"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;Hello,&lt;br/&gt;on my study, I want to present two options to participants -- right now, in text form -- but would like to adjust the text based on the value of globals variabls (defined under values) that will change for each participant based on the scores obtained during a pre-callibration phase.&lt;br/&gt;&lt;br/&gt;I wonder if:&lt;br/&gt;&lt;br/&gt;1) the /items within a &amp;lt;text&amp;gt; can be dynamically modified based on the values of such global variables?&lt;br/&gt;2) can the /position defined within a &amp;lt;text&amp;gt; be modifed also? I would like to "randomize" the positions of the options between left and right at each trial.&lt;br/&gt;&lt;br/&gt;Below is some sample code of what I'm trying to do.&lt;br/&gt;&lt;br/&gt;3) On a related topic, is it possible to dynamically chance the /caption of &amp;lt;sureypage&amp;gt;?&lt;br/&gt;&lt;br/&gt;Any help would be greatly appreciated. Thanks a lot!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;&amp;lt;values&amp;gt;&lt;br/&gt;//xxx&lt;br/&gt;/ easyThresh50 = 8 //The number of boxes at the 50% level&lt;br/&gt;/ mediumThresh65 = 10 //The number of boxes at the 65% level&lt;br/&gt;/ mediumThresh80 = 13 //The number of boxes at the 80% level&lt;br/&gt;/ hardThresh95 = 15 //The number of boxes at the 95% level&lt;br/&gt;//yyy&lt;br/&gt;/ low_pay = 2 //Low reward&lt;br/&gt;/ medium_pay = 6 //Medium reward&lt;br/&gt;/ high_pay = 10 //High reward&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text rest_1_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;Rest&amp;lt;br&amp;gt;1 credit&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (20%, 50%)&lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text effort_n_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;xxx boxes&amp;lt;br&amp;gt;yyy credits&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (80%, 50%) &lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center &lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial bottomleftpractice&amp;gt;&lt;br/&gt;/ stimulustimes = [0=rest_1_cr, effort_n_cr]&lt;br/&gt;/inputdevice = mouse&lt;br/&gt;/timeout = 10000&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40894"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;All of these things are possible. Since it's not at all obvious from your code snippet what exactly you want to do depending on what, it's not possible to give you an example on the basis of your code. Here are a few generic examples:&lt;br/&gt;(1) Randomizing on-screen positions of clickable elements every trial:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;(2) Piping variables into text items:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&lt;br/&gt;/ trialType = null&lt;br/&gt;&lt;br/&gt;/ aPoints = 0&lt;br/&gt;/ bPoints = 0&lt;br/&gt;&lt;br/&gt;/ aHigh = 100&lt;br/&gt;/ bHigh = 80&lt;br/&gt;/ aLow = 20&lt;br/&gt;/ bLow = 40&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// determine trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.trialType = list.trialType.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// set winnings according to trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (values.trialType == "High") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b,c]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text c&amp;gt;&lt;br/&gt;/ items = ("Trial type: &amp;lt;%values.trialType%&amp;gt; reward.&lt;br/&gt;Option A: Chance to win &amp;lt;%values.aPoints%&amp;gt; points.&lt;br/&gt;Option B: Chance to win &amp;lt;%values.bPoints%&amp;gt; points.")&lt;br/&gt;/ position = (50%, 30%)&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list trialType&amp;gt;&lt;br/&gt;/ items = ("High", "Low")&lt;br/&gt;/ poolsize = 10&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;You can set the /caption of a surveyPage in the same way. Just pipe in the text you want via a variable you set.&lt;br/&gt;&lt;br/&gt;These things are all covered in the Programmer's Manual, too, so I would very much recommend working through it in full:&lt;br/&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf&lt;/a&gt;&lt;/a&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40895"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Dear Dave,&lt;br/&gt;&lt;br/&gt;thank you very much for providing sample-codes -- very helpful as usual!&lt;br/&gt;One question regarding the code "(1) Randomizing on-screen positions of clickable elements every trial:"&lt;br/&gt;I noticed that the clickable area seems to be the green region in the attached screenshot. I wonder if there is an easy way to augment the region to cover the word itself? Something like the area inside the blue-dotted rectangle?&lt;br/&gt;I checked the manual as you suggested but didn't find a mention to such a property/parameter. I thought one way to achieved that would be to insert a rectangle "under" the word and make the rectangle a validresponse?&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;img src="../Uploads/Images/78cb48e5-ec26-487c-92e5-96b5.png" data-download-url="../Uploads/Images/170d8f72-636f-4763-b27c-6d97.png" id="if_insertedNode_1751518164882"&gt;&lt;br/&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="41298"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Just set the respective &amp;lt;text&amp;gt; elements' /size to whatever you need. Here you can see the bounding rectangle defined by /size by setting a /txBgColor.&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;    // pick random postion for option A&lt;br/&gt;    values.aX = list.x.nextValue;&lt;br/&gt;    // pick position for option B&lt;br/&gt;    values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;a class="if-quote-goto quote-link" href="#" data-id="41299"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;This is awesome, thanks Dave!&lt;br/&gt;Best,&lt;br/&gt;EN</description><pubDate>Fri, 04 Jul 2025 01:34:17 GMT</pubDate><dc:creator>EN</dc:creator></item><item><title>RE: Can text's be clicked and detected?</title><link>https://forums.millisecond.com/Topic41299.aspx</link><description>&lt;blockquote data-id="41298" class="if-quote-wrapper" unselectable="on" data-guid="1751542346090" contenteditable="false" id="if_insertedNode_1751542344828"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="41298" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="41298" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="41298" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 7/3/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-41298"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40895" class="if-quote-wrapper" unselectable="on" data-guid="1751542346090" contenteditable="false" id="if_insertedNode_1751508863306"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40895" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40895" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40895" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40895"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40894" class="if-quote-wrapper" unselectable="on" data-guid="1751542346090" contenteditable="false" id="if_insertedNode_1750332338894"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40894" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40894" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40894" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40894"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;Hello,&lt;br/&gt;on my study, I want to present two options to participants -- right now, in text form -- but would like to adjust the text based on the value of globals variabls (defined under values) that will change for each participant based on the scores obtained during a pre-callibration phase.&lt;br/&gt;&lt;br/&gt;I wonder if:&lt;br/&gt;&lt;br/&gt;1) the /items within a &amp;lt;text&amp;gt; can be dynamically modified based on the values of such global variables?&lt;br/&gt;2) can the /position defined within a &amp;lt;text&amp;gt; be modifed also? I would like to "randomize" the positions of the options between left and right at each trial.&lt;br/&gt;&lt;br/&gt;Below is some sample code of what I'm trying to do.&lt;br/&gt;&lt;br/&gt;3) On a related topic, is it possible to dynamically chance the /caption of &amp;lt;sureypage&amp;gt;?&lt;br/&gt;&lt;br/&gt;Any help would be greatly appreciated. Thanks a lot!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;&amp;lt;values&amp;gt;&lt;br/&gt;//xxx&lt;br/&gt;/ easyThresh50 = 8 //The number of boxes at the 50% level&lt;br/&gt;/ mediumThresh65 = 10 //The number of boxes at the 65% level&lt;br/&gt;/ mediumThresh80 = 13 //The number of boxes at the 80% level&lt;br/&gt;/ hardThresh95 = 15 //The number of boxes at the 95% level&lt;br/&gt;//yyy&lt;br/&gt;/ low_pay = 2 //Low reward&lt;br/&gt;/ medium_pay = 6 //Medium reward&lt;br/&gt;/ high_pay = 10 //High reward&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text rest_1_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;Rest&amp;lt;br&amp;gt;1 credit&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (20%, 50%)&lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text effort_n_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;xxx boxes&amp;lt;br&amp;gt;yyy credits&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (80%, 50%) &lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center &lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial bottomleftpractice&amp;gt;&lt;br/&gt;/ stimulustimes = [0=rest_1_cr, effort_n_cr]&lt;br/&gt;/inputdevice = mouse&lt;br/&gt;/timeout = 10000&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40894"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;All of these things are possible. Since it's not at all obvious from your code snippet what exactly you want to do depending on what, it's not possible to give you an example on the basis of your code. Here are a few generic examples:&lt;br/&gt;(1) Randomizing on-screen positions of clickable elements every trial:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;(2) Piping variables into text items:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&lt;br/&gt;/ trialType = null&lt;br/&gt;&lt;br/&gt;/ aPoints = 0&lt;br/&gt;/ bPoints = 0&lt;br/&gt;&lt;br/&gt;/ aHigh = 100&lt;br/&gt;/ bHigh = 80&lt;br/&gt;/ aLow = 20&lt;br/&gt;/ bLow = 40&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// determine trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.trialType = list.trialType.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// set winnings according to trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (values.trialType == "High") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b,c]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text c&amp;gt;&lt;br/&gt;/ items = ("Trial type: &amp;lt;%values.trialType%&amp;gt; reward.&lt;br/&gt;Option A: Chance to win &amp;lt;%values.aPoints%&amp;gt; points.&lt;br/&gt;Option B: Chance to win &amp;lt;%values.bPoints%&amp;gt; points.")&lt;br/&gt;/ position = (50%, 30%)&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list trialType&amp;gt;&lt;br/&gt;/ items = ("High", "Low")&lt;br/&gt;/ poolsize = 10&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;You can set the /caption of a surveyPage in the same way. Just pipe in the text you want via a variable you set.&lt;br/&gt;&lt;br/&gt;These things are all covered in the Programmer's Manual, too, so I would very much recommend working through it in full:&lt;br/&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf&lt;/a&gt;&lt;/a&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40895"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Dear Dave,&lt;br/&gt;&lt;br/&gt;thank you very much for providing sample-codes -- very helpful as usual!&lt;br/&gt;One question regarding the code "(1) Randomizing on-screen positions of clickable elements every trial:"&lt;br/&gt;I noticed that the clickable area seems to be the green region in the attached screenshot. I wonder if there is an easy way to augment the region to cover the word itself? Something like the area inside the blue-dotted rectangle?&lt;br/&gt;I checked the manual as you suggested but didn't find a mention to such a property/parameter. I thought one way to achieved that would be to insert a rectangle "under" the word and make the rectangle a validresponse?&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;img src="../Uploads/Images/78cb48e5-ec26-487c-92e5-96b5.png" data-download-url="../Uploads/Images/170d8f72-636f-4763-b27c-6d97.png" id="if_insertedNode_1751518164882"&gt;&lt;br/&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="41298"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Just set the respective &amp;lt;text&amp;gt; elements' /size to whatever you need. Here you can see the bounding rectangle defined by /size by setting a /txBgColor.&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;    // pick random postion for option A&lt;br/&gt;    values.aX = list.x.nextValue;&lt;br/&gt;    // pick position for option B&lt;br/&gt;    values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;/ size = (15%, 10%)&lt;br/&gt;/ vjustify = center&lt;br/&gt;/ txbgcolor = lightgray&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]</description><pubDate>Thu, 03 Jul 2025 11:36:40 GMT</pubDate><dc:creator>Dave</dc:creator></item><item><title>RE: Can text's be clicked and detected?</title><link>https://forums.millisecond.com/Topic41298.aspx</link><description>&lt;blockquote data-id="40895" class="if-quote-wrapper" unselectable="on" data-guid="1751508863494" contenteditable="false" id="if_insertedNode_1751508863306"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40895" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40895" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40895" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40895"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;blockquote data-id="40894" class="if-quote-wrapper" unselectable="on" data-guid="1751508863494" contenteditable="false" id="if_insertedNode_1750332338894"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40894" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40894" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40894" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40894"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;Hello,&lt;br/&gt;on my study, I want to present two options to participants -- right now, in text form -- but would like to adjust the text based on the value of globals variabls (defined under values) that will change for each participant based on the scores obtained during a pre-callibration phase.&lt;br/&gt;&lt;br/&gt;I wonder if:&lt;br/&gt;&lt;br/&gt;1) the /items within a &amp;lt;text&amp;gt; can be dynamically modified based on the values of such global variables?&lt;br/&gt;2) can the /position defined within a &amp;lt;text&amp;gt; be modifed also? I would like to "randomize" the positions of the options between left and right at each trial.&lt;br/&gt;&lt;br/&gt;Below is some sample code of what I'm trying to do.&lt;br/&gt;&lt;br/&gt;3) On a related topic, is it possible to dynamically chance the /caption of &amp;lt;sureypage&amp;gt;?&lt;br/&gt;&lt;br/&gt;Any help would be greatly appreciated. Thanks a lot!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;&amp;lt;values&amp;gt;&lt;br/&gt;//xxx&lt;br/&gt;/ easyThresh50 = 8 //The number of boxes at the 50% level&lt;br/&gt;/ mediumThresh65 = 10 //The number of boxes at the 65% level&lt;br/&gt;/ mediumThresh80 = 13 //The number of boxes at the 80% level&lt;br/&gt;/ hardThresh95 = 15 //The number of boxes at the 95% level&lt;br/&gt;//yyy&lt;br/&gt;/ low_pay = 2 //Low reward&lt;br/&gt;/ medium_pay = 6 //Medium reward&lt;br/&gt;/ high_pay = 10 //High reward&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text rest_1_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;Rest&amp;lt;br&amp;gt;1 credit&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (20%, 50%)&lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text effort_n_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;xxx boxes&amp;lt;br&amp;gt;yyy credits&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (80%, 50%) &lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center &lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial bottomleftpractice&amp;gt;&lt;br/&gt;/ stimulustimes = [0=rest_1_cr, effort_n_cr]&lt;br/&gt;/inputdevice = mouse&lt;br/&gt;/timeout = 10000&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40894"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;All of these things are possible. Since it's not at all obvious from your code snippet what exactly you want to do depending on what, it's not possible to give you an example on the basis of your code. Here are a few generic examples:&lt;br/&gt;(1) Randomizing on-screen positions of clickable elements every trial:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;(2) Piping variables into text items:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&lt;br/&gt;/ trialType = null&lt;br/&gt;&lt;br/&gt;/ aPoints = 0&lt;br/&gt;/ bPoints = 0&lt;br/&gt;&lt;br/&gt;/ aHigh = 100&lt;br/&gt;/ bHigh = 80&lt;br/&gt;/ aLow = 20&lt;br/&gt;/ bLow = 40&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// determine trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.trialType = list.trialType.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// set winnings according to trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (values.trialType == "High") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b,c]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text c&amp;gt;&lt;br/&gt;/ items = ("Trial type: &amp;lt;%values.trialType%&amp;gt; reward.&lt;br/&gt;Option A: Chance to win &amp;lt;%values.aPoints%&amp;gt; points.&lt;br/&gt;Option B: Chance to win &amp;lt;%values.bPoints%&amp;gt; points.")&lt;br/&gt;/ position = (50%, 30%)&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list trialType&amp;gt;&lt;br/&gt;/ items = ("High", "Low")&lt;br/&gt;/ poolsize = 10&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;You can set the /caption of a surveyPage in the same way. Just pipe in the text you want via a variable you set.&lt;br/&gt;&lt;br/&gt;These things are all covered in the Programmer's Manual, too, so I would very much recommend working through it in full:&lt;br/&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf&lt;/a&gt;&lt;/a&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40895"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Dear Dave,&lt;br/&gt;&lt;br/&gt;thank you very much for providing sample-codes -- very helpful as usual!&lt;br/&gt;One question regarding the code "(1) Randomizing on-screen positions of clickable elements every trial:"&lt;br/&gt;I noticed that the clickable area seems to be the green region in the attached screenshot. I wonder if there is an easy way to augment the region to cover the word itself? Something like the area inside the blue-dotted rectangle?&lt;br/&gt;I checked the manual as you suggested but didn't find a mention to such a property/parameter. I thought one way to achieved that would be to insert a rectangle "under" the word and make the rectangle a validresponse?&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;img src="../Uploads/Images/78cb48e5-ec26-487c-92e5-96b5.png" data-download-url="../Uploads/Images/170d8f72-636f-4763-b27c-6d97.png" id="if_insertedNode_1751518164882"&gt;&lt;br/&gt;</description><pubDate>Thu, 03 Jul 2025 04:50:12 GMT</pubDate><dc:creator>EN</dc:creator></item><item><title>RE: Can text's be clicked and detected?</title><link>https://forums.millisecond.com/Topic40895.aspx</link><description>&lt;blockquote data-id="40894" class="if-quote-wrapper" unselectable="on" data-guid="1750332339877" contenteditable="false" id="if_insertedNode_1750332338894"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="40894" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="40894" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="40894" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;EN - 6/19/2025&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-40894"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;Hello,&lt;br/&gt;on my study, I want to present two options to participants -- right now, in text form -- but would like to adjust the text based on the value of globals variabls (defined under values) that will change for each participant based on the scores obtained during a pre-callibration phase.&lt;br/&gt;&lt;br/&gt;I wonder if:&lt;br/&gt;&lt;br/&gt;1) the /items within a &amp;lt;text&amp;gt; can be dynamically modified based on the values of such global variables?&lt;br/&gt;2) can the /position defined within a &amp;lt;text&amp;gt; be modifed also? I would like to "randomize" the positions of the options between left and right at each trial.&lt;br/&gt;&lt;br/&gt;Below is some sample code of what I'm trying to do.&lt;br/&gt;&lt;br/&gt;3) On a related topic, is it possible to dynamically chance the /caption of &amp;lt;sureypage&amp;gt;?&lt;br/&gt;&lt;br/&gt;Any help would be greatly appreciated. Thanks a lot!&lt;br/&gt;&lt;br/&gt;EN&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;&amp;lt;values&amp;gt;&lt;br/&gt;//xxx&lt;br/&gt;/ easyThresh50 = 8 //The number of boxes at the 50% level&lt;br/&gt;/ mediumThresh65 = 10 //The number of boxes at the 65% level&lt;br/&gt;/ mediumThresh80 = 13 //The number of boxes at the 80% level&lt;br/&gt;/ hardThresh95 = 15 //The number of boxes at the 95% level&lt;br/&gt;//yyy&lt;br/&gt;/ low_pay = 2 //Low reward&lt;br/&gt;/ medium_pay = 6 //Medium reward&lt;br/&gt;/ high_pay = 10 //High reward&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text rest_1_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;Rest&amp;lt;br&amp;gt;1 credit&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (20%, 50%)&lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text effort_n_cr&amp;gt;&lt;br/&gt;/ items = ("&amp;lt;center&amp;gt;xxx boxes&amp;lt;br&amp;gt;yyy credits&amp;lt;/center&amp;gt;")&lt;br/&gt;/ txColor = (0, 0, 255)&lt;br/&gt;/ txBGColor = (255, 255, 255)&lt;br/&gt;/ position = (80%, 50%) &lt;br/&gt;/ valign = top &lt;br/&gt;/ halign = center &lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial bottomleftpractice&amp;gt;&lt;br/&gt;/ stimulustimes = [0=rest_1_cr, effort_n_cr]&lt;br/&gt;/inputdevice = mouse&lt;br/&gt;/timeout = 10000&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="40894"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;All of these things are possible. Since it's not at all obvious from your code snippet what exactly you want to do depending on what, it's not possible to give you an example on the basis of your code. Here are a few generic examples:&lt;br/&gt;(1) Randomizing on-screen positions of clickable elements every trial:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;(2) Piping variables into text items:&lt;br/&gt;&lt;br/&gt;[code]&amp;lt;values&amp;gt;&lt;br/&gt;/ aX = 0%&lt;br/&gt;/ bX = 0%&lt;br/&gt;&lt;br/&gt;/ trialType = null&lt;br/&gt;&lt;br/&gt;/ aPoints = 0&lt;br/&gt;/ bPoints = 0&lt;br/&gt;&lt;br/&gt;/ aHigh = 100&lt;br/&gt;/ bHigh = 80&lt;br/&gt;/ aLow = 20&lt;br/&gt;/ bLow = 40&lt;br/&gt;&amp;lt;/values&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block exampleBlock&amp;gt;&lt;br/&gt;/ trials = [1-10 = exampleTrial]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;trial exampleTrial&amp;gt;&lt;br/&gt;/ onTrialBegin = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick random postion for option A&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// pick position for option B&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bX = list.x.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// determine trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.trialType = list.trialType.nextValue;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// set winnings according to trial type&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (values.trialType == "High") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bHigh;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.aPoints = values.aLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.bPoints = values.bLow;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br/&gt;]&lt;br/&gt;/ stimulusframes = [1=a,b,c]&lt;br/&gt;/ inputdevice = mouse&lt;br/&gt;/ validresponse = (a,b)&lt;br/&gt;&amp;lt;/trial&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text a&amp;gt;&lt;br/&gt;/ items = ("Option A")&lt;br/&gt;/ hPosition = values.aX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text b&amp;gt;&lt;br/&gt;/ items = ("Option B")&lt;br/&gt;/ hPosition = values.bX&lt;br/&gt;/ vPosition = 65%&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;text c&amp;gt;&lt;br/&gt;/ items = ("Trial type: &amp;lt;%values.trialType%&amp;gt; reward.&lt;br/&gt;Option A: Chance to win &amp;lt;%values.aPoints%&amp;gt; points.&lt;br/&gt;Option B: Chance to win &amp;lt;%values.bPoints%&amp;gt; points.")&lt;br/&gt;/ position = (50%, 30%)&lt;br/&gt;&amp;lt;/text&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list trialType&amp;gt;&lt;br/&gt;/ items = ("High", "Low")&lt;br/&gt;/ poolsize = 10&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;list x&amp;gt;&lt;br/&gt;/ items = (35%, 65%)&lt;br/&gt;/ selectionrate = always&lt;br/&gt;&amp;lt;/list&amp;gt;&lt;br/&gt;[/code]&lt;br/&gt;&lt;br/&gt;You can set the /caption of a surveyPage in the same way. Just pipe in the text you want via a variable you set.&lt;br/&gt;&lt;br/&gt;These things are all covered in the Programmer's Manual, too, so I would very much recommend working through it in full:&lt;br/&gt;&lt;a href="https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf"&gt;https://www.millisecond.com/support/Inquisit%20Programmer's%20Manual.pdf&lt;/a&gt;</description><pubDate>Thu, 19 Jun 2025 12:00:27 GMT</pubDate><dc:creator>Dave</dc:creator></item></channel></rss>