File Exchange

image thumbnail


version (888 Bytes) by Marc Jakobi
Locks the cursor horizontally or vertically

1 Download

Updated 06 Feb 2017

View License

LOCKPOINTER: Add this to a listener for a figure's 'WindowMouseMotion'
event to lock the cursor horizontally or vertically.
Syntax: setPointer(xp, axis)
xp: pointer pixel position of format [x, y]
axis: 'x' to lock to vertical line (locks x position)
'y' to lock to horizontal line (locks y position)

Usage example:

fig = figure;
ax = axes;
[xx(2), yy(2)] = ginput(1);
x_p = get(0, 'PointerLocation');
% other code here
hL = addlistener(fig,'WindowMouseMotion', @(x, y) lockPointer(x_p, 'x'));
[xx(1), yy(1)] = ginput(1);

Author: Marc Jakobi, 07. February 2017

Note: If somebody has a tip for a significant performance improvement to make the above example less jittery, please let me know. Leaving out the strcmp(axes) check does not make a noticeable difference on my machine.

Cite As

Marc Jakobi (2020). lockPointer (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (0)

MATLAB Release Compatibility
Created with R2016b
Compatible with any release
Platform Compatibility
Windows macOS Linux