Pan mode control via keyboard

2 views (last 30 days)
SSOI SS
SSOI SS on 28 Feb 2012
Hi! I have a problem. If I set command "pan" in the KeypressFcn of a GUI, so that I can use a key to control the pan mode (e.g. "P"). If the pan mode is not on, there is no problem to activate the pan mode. But if I press the key again, then the KeypressFcn will no more be invoked.
If there anyway to let the key alway control Pan on and Pan off?
Thanks

Answers (1)

Walter Roberson
Walter Roberson on 28 Feb 2012
  2 Comments
SSOI SS
SSOI SS on 28 Feb 2012
Hi Walter, thanks, turning off the WindowListenerHandles is definitive not the solution for me. I attachted an example to show the problem:
function exampleGUI
hF = figure;
set(hF, 'WindowKeyPressFcn', @figKeyPressCallback);
function figKeyPressCallback(fHandle, EventData)
% add some keyshortcuts to SignalViewer
Key = get(fHandle, 'CurrentCharacter');
switch Key
case 'p'
pan;
end
figure(hF);
end
end
There is no way to let the p key always control the pan function ....
Walter Roberson
Walter Roberson on 28 Feb 2012
You turn on pan, you use the Jedi Mind Trick on the listeners, you install a new key press callback. The new key press callback handles everything the regular callback would but also looks for 'p' and if it finds it then then it removes the trick callback and wakes up the listeners and turns pan off.

Sign in to comment.

Categories

Find more on App Building in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!