Setting KeyPressFcn on current figure

Hi all,
I have defined a KeyPressFcn (or WindowKeyPressFcn) for a figure. Now I want to keep that callback active while another figure has focus. Is this possible? Figure callbacks seem not to work on current figures but on focused figures. Can I change that, or is there some other solution?
Thanks!
Jaap

Answers (2)

No, the figure with the callback has to have focus. You could have a new figure take over with the keypressfcn while it's active perhaps. We'd need more detail to help you with a solution.
Jaap
Jaap on 13 Feb 2012
Thank you. This spares me from continuing that search.
My main window is a scatterplot. The user can select a point, and create a plot showing characteristics of that point. On the main window, arrow keys can move a selected point. I want that behaviour being reflected in both (figure) windows.
Could you reflect a bit on "having a new figure take over with the keypressfcn while it's active"?

1 Comment

So the callback (keypressfcn) on the scatterplot that opens the new figure should pass it information with the handle to that point, the figure/axes handles and any other information it might need. Then it sets the keypressfcn of the new figure to do what you want (I would keep this callback in a standalone *.m file). The behavior that you want is completely feasible.
I hope this helps. Post more information if you want more detail.

Sign in to comment.

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Asked:

on 10 Feb 2012

Community Treasure Hunt

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

Start Hunting!