您是否知道如何在matlab gui運行時將鍵盤筆畫讀入Matlab? (即不使用「輸入」功能,該功能向命令窗口發送提示,並且需要您按下返回鍵)。如何在GUI運行時攔截Matlab中的關鍵筆劃
如果可能,我們希望避免使用mex函數。
您是否知道如何在matlab gui運行時將鍵盤筆畫讀入Matlab? (即不使用「輸入」功能,該功能向命令窗口發送提示,並且需要您按下返回鍵)。如何在GUI運行時攔截Matlab中的關鍵筆劃
如果可能,我們希望避免使用mex函數。
如果您的GUI基於圖形,則可以使用圖形屬性keypressfcn
來定義處理鍵盤輸入的回調函數。見MATLAB幫助進一步說明:http://www.mathworks.de/help/techdoc/ref/figure_props.html#KeyPressFcn
您必須首先通過手柄來聲明你的身材:
fig = figure;
,那麼你可以設置屬性(以下引號)即可激活您已經寫入功能響應用戶的相互作用(與@符號):
set(fig,'KeyPressFcn',@keyDownListener)
set(fig, 'KeyReleaseFcn', @keyUpListener);
set(fig,'WindowButtonDownFcn', @mouseDownListener);
set(fig,'WindowButtonUpFcn', @mouseUpListener);
set(fig,'WindowButtonMotionFcn', @mouseMoveListener);
上面的例子是從shooter03.ma MATLAB空間射擊,的極好來源(來自MATLAB文件交換),用於在MATLAB用戶對象相互作用的許多方面:
嘗試:
hf = figure;
get(hf,'CurrentCharacter')