pan cancels WindowKeyPressFcn callback...

Hi,
I noticed that after using the pan function, WindowKeyPressFcn callback doesn't work anymore...
Example:
function someFunction
Fig = figure('WindowKeyPressFcn', @buttonPressed_Callback);
plot(rand(1,10))
pan on
function buttonPressed_Callback(handle, event)
key = event.Key
end
end
How can I reactivate the WindowKeyPressFcn callback after the pan command?
Thanks,
Razvan

 Accepted Answer

You are correct, pan does have that effect. Please see http://www.mathworks.com/matlabcentral/answers/30563-pan-mode-control-via-keyboard

3 Comments

Thanks!
Actually I tried the "Jedi Mind Trick" that you suggest in the other thread . My code is now
function someFunction
Fig = figure();
plot(rand(1,10))
addlistener(Fig, 'WindowKeyPress', @keyPress);
pan on
function keyPress(src,evtData)
key = get(src,'CurrentCharacter')
end
end
Now I can capture the key that was pressed, but still the figure disappears after I press a key and I get back to Matlab command window...
Any further suggestions?
Thanks,
Razvan
1) *First* turn on pan.
2) Then turn off the listeners as shown at https://groups.google.com/group/comp.soft-sys.matlab/msg/db42cf51392b442a
3) Then set() your desired function as the WindowKeyPress callback.
4) When it is time to turn pan off, reverse the order: set() the WindowKeyPress callback to what it would normally be, then re-enable the listeners, then turn pan off.
addlistener() is not involved in this process: you need to disable the listeners instead as the listeners are blocking you from adding your own WindowKeyPress callback.
Chella
Chella on 23 Jul 2014
Edited: Chella on 24 Jul 2014
I know this is an old thread but it helped me out. In addition to step 3) I also have to set KeyPressFcn = [] to avoid keystrokes getting back to Matlab command window.
Thanks

Sign in to comment.

More Answers (1)

Hi Razvan,
I think this thread might interest you:

1 Comment

Thanks, but I couldn't solve this problem yet.
Razvan

Sign in to comment.

Categories

Find more on Creating, Deleting, and Querying Graphics Objects in Help Center and File Exchange

Asked:

on 10 May 2012

Edited:

on 24 Jul 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!