Use MatLab to move and click mouse, to press keyboard

1 min read

We have an interesting challenge in one of our projects. In our neuroimaging experiment, we need the participant to play a computer game while his brain is scanned (using a NIRS device ETG 4000 in this case). As you can imagine, we need to start the computer game and brain data collection at the same time to make sure the behavior data and neuroimaging data are synchronized. What we usually do is to write some code to start ETG 4000 programmaticly inside the game program; but we can not do it this time because this computer game is developed by others and we can’t inject code into it.

What we want to achieve, simply put, is to click the “Go” button of the game at the same time when we start ETG 4000.

Fortunately there is a solution. We can write a MatLab program to simulate mouse movement and click. Below is the matlab code which will automatically move the mouse to point (640,640) and click it after 5s. If your computer game program requires keyboard input, the code below also contains a snippet for that.

import java.awt.Robot;
import java.awt.event.*;
robot = Robot;

% 5s later, move the mouse to point (640,640) where the 'go' button is,
% then click it.
pause(5);
robot.mouseMove(640, 640);
robot.mousePress(InputEvent.BUTTON1_MASK);
robot.mouseRelease(InputEvent.BUTTON1_MASK);
% fill in the code to start ETG 4000 here

% 5s later, press key SHIFT and W at the same time
%pause(5);
robot.keyPress(java.awt.event.KeyEvent.VK_SHIFT)
robot.keyPress(java.awt.event.KeyEvent.VK_W)
robot.keyRelease(java.awt.event.KeyEvent.VK_W)
robot.keyRelease(java.awt.event.KeyEvent.VK_SHIFT)

As you can see in the following short screen shot, after we run the matlab program (called testmouse), 5s later the mouse moves to (640,640) and clicks, then key SHIFT+W is pressed.

Refer: http://www.mathworks.com/matlabcentral/answers/100545



写作助手,把中式英语变成专业英文


Want to receive new post notification? 有新文章通知我

第六十期fNIRS Journal Club通知2025/3/8, 10am 邹立业教授团队

长时间久坐行为往往会引起脑血流供应不足,进而导致注意力下降及执行功能表现减弱,并影响人脑学习的信息加工过程。以往研究表明体育活动对执行功能表现具有积极作用。然而,关于在久坐期间进行短时有氧运动干预是否
Wanling Zhu
14 sec read

第五十九期fNIRS Journal Club视频 赵斐博士

Youtube: https://youtu.be/dIlSEsJvHm8 优酷:https://v.youku.com/v_show/id_XNjQ1MDE3OTY2MA==.html?spm=a2
Wanling Zhu
17 sec read

第五十九期fNIRS Journal Club通知2025/1/11, 10am 赵斐博士

糖尿病患者持续的高血糖水平会导致全身蛋白质的结构和功能变化,以及大脑中蛋白质聚集体的积累,影响认知功能。来自美国Wayne State University的赵斐博士将分享一项使用功能性近红外光谱(f
Wanling Zhu
12 sec read

3 Replies to “Use MatLab to move and click mouse, to press…”

  1. Thank you very much for this code. It was exactly what I needed – to run the EEG recording software with GetSecs in order to sync the experiment with the EEG acquisition without trigger. ( although it is sub-optimal it is good enough for my purposes). Thank you

Leave a Reply

Your email address will not be published. Required fields are marked *