我們雖然已經(jīng)能夠Advanced按鈕設(shè)定來(lái)顯示被試的按鍵冷溃,不過(guò)這終究不夠靈活宠蚂。
通過(guò)查看幫助文件度宦,我們會(huì)發(fā)現(xiàn)一個(gè)叫ResponseData的類踢匣,這個(gè)類下面還有好幾個(gè)子類,如KeyboardResponseData,MouseResponseData斗埂。
這些類符糊,都是用來(lái)記錄相應(yīng)的設(shè)備的反應(yīng)數(shù)據(jù)的凫海。如KeyboardResponseData是用戶對(duì)鍵盤(pán)的按鍵的各方面數(shù)據(jù)記錄呛凶。
那接下來(lái)我們首先先看一下在幫助文檔里的東西。
ResponseData有這些屬性:
首先明白一點(diǎn):一個(gè)ResponseData行贪,對(duì)應(yīng)一次反應(yīng)漾稀。其中RESP就是按下的按鍵,如”A”鍵建瘫,”Shift”鍵等等崭捍,總之是你在刺激控件中按下的按鍵。
聽(tīng)上去很抽象啰脚,那么請(qǐng)打開(kāi)“示例程序3-11”殷蛇,請(qǐng)查看里面的Inline1实夹,看看代碼和注釋。
這些代碼是根據(jù)官方自帶教程里的代碼改編而成的粒梦。
其中亮航,你會(huì)注意到后面的代碼里,有些代碼在行的最后有下劃線匀们。
這個(gè)下劃線其實(shí)前面和后面各有一個(gè)空格缴淋,其作用是當(dāng)一行代碼太長(zhǎng)的時(shí)候,可以用這個(gè)方式換行泄朴。注意空格是不可少的重抖。
試試看,里面是什么效果祖灰?
具體各代碼的作用钟沛,請(qǐng)看Inline1當(dāng)中的注釋。
階段練習(xí)
①設(shè)計(jì)一個(gè)程序夫植,一個(gè)StimDisplay接收一次按鍵讹剔,這次按鍵可以是鼠標(biāo)也可以是鍵盤(pán)。按鍵后详民,在屏幕上顯示按下的是什么鍵延欠,是鼠標(biāo)還是鍵盤(pán)。并且沈跨,如果按下的是空格鍵由捎,顯示:“你剛才按了空格鍵《隽荩”
提示:用If [ResponseData] .RESP = “{SPACE}” then 來(lái)檢查狞玛。
②設(shè)計(jì)一個(gè)程序,一個(gè)StimDisplay接收兩次鍵盤(pán)按鍵涧窒。檢查兩次按鍵是否是相同的心肪,如果是相同的,那么顯示“你剛才按了兩個(gè)相同的按鍵”纠吴;否則硬鞍,分別把兩個(gè)按鍵在屏幕上顯示出來(lái)。
③設(shè)計(jì)一個(gè)程序戴已,一個(gè)StimDisplay只接收松開(kāi)的按鍵固该。此外,如果是松開(kāi)了空格鍵糖儡,那么顯示“你剛才松開(kāi)了空格鍵”伐坏,否則顯示“你沒(méi)有松開(kāi)空格鍵”,然后重新顯示該StimDisplay握联,直到被試按下空格鍵為止桦沉。
此為開(kāi)源免費(fèi)教程每瞒。教程所用資源等請(qǐng)?jiān)L問(wèn)目錄或?qū)n},或者Github頁(yè)面:
http://www.reibang.com/p/5bbf1c274370
https://github.com/zkx654321/Learn-E-Prime-Easily