how can we control push button in matlab gui by keyboard instead of mouse click?
조회 수: 16 (최근 30일)
이전 댓글 표시
채택된 답변
Geoff Hayes
2015년 2월 22일
heisenberg - if you are using GUIDE to create your GUI, then you could assign a WindowKeyPressFcn callback to your figure (GUI) and then, based on the key pressed while the figure has focus, you could call the appropriate button.
Suppose that your GUI/figure is named figure1 and you have one push button (named pushbutton1) that you wish to fire when you press the x key. Your callback to capture key presses could look something like
function figure1_WindowKeyPressFcn(hObject, eventdata, handles)
% determine the key that was pressed
keyPressed = eventdata.Key;
if strcmpi(keyPressed,'x')
% set focus to the button
uicontrol(handles.pushbutton1);
% call the callback
pushbutton1_Callback(handles.pushbutton1,[],handles);
end
In the above we check for when the x is pressed and then simulate the pressing of the button by calling the appropriate callback. You may not need to set focus to the button using uicontrol but I don't think that it hurts to do this as well.
댓글 수: 5
Geoff Hayes
2015년 2월 24일
Please post some of your code so that I can get an idea of what you have implemented.
추가 답변 (2개)
Wajih Khan
2017년 12월 6일
when I press a key it just types in the command window and nothing else happens... help
댓글 수: 1
Geoff Hayes
2017년 12월 11일
Wajih - please post this as a new question rather than as an answer. Include any relevant code.
참고 항목
카테고리
Help Center 및 File Exchange에서 Migrate GUIDE Apps에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!