如何能uipanel內一個捕獲鍵盤輸入,即當面板說有什麼重點?我發現uipanel
沒有KeyPressFcn
財產。我讀過無證Matlab的this post關於Java的回調,但我也不能得到KeyPressedCallback
工作。例如,如果我嘗試這樣的:如何捕獲按鍵在Matlab uipanel
set(h_panel, 'KeyPressFcn', @(src, event)key_press(obj, src, event));
我得到這個錯誤:如果我嘗試KeyPressedCallback
發生
The name 'KeyPressFcn' is not an accessible property for an instance of class 'uicontrol'.
同樣的事情。恐怕我不得不採取某種涉及父母形象的手段,如果可能,我想避免這種手段。
從某種意義上說,面板可以「激活」,並且可以接受按鍵?顯然有一個按鈕(鼠標)的事件,但沒有關鍵... – chappjc 2014-11-04 21:16:11
@chappjc是正確的,面板不活躍在其他uicontrols是。您可以嘗試在**圖**'KeyPressFcn'中截取按鍵事件,然後檢查您的鼠標是否位於uipanel上方(或者焦點控制是您uipanel的「孩子」)。如果是的話,做你的東西。如果不是,則丟棄按鍵事件或將其傳遞給其他人物聽衆。 – Hoki 2014-11-05 15:45:43
嗯,我想避免訴諸父母的數字回調,但我想另一種方法是爲'uipanel'內的每個'uicontrol'設置回調。但是軸和線系列真的沒有'KeyPressFcn'!? – patrickvacek 2014-11-06 15:33:20