Setting KeyPressFcn on current figure

4 ビュー (過去 30 日間)
Jaap
Jaap 2012 年 2 月 10 日
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

回答 (2 件)

Sean de Wolski
Sean de Wolski 2012 年 2 月 10 日
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 2012 年 2 月 13 日
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 件のコメント
Sean de Wolski
Sean de Wolski 2012 年 2 月 13 日
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.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeEnvironment and Settings についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by