I just noticed that the keypress callback does not work when the app.cursor is enabled. So now my question is: How can I enable the keypress callback and the app.cursor at the same time?
keypress callback not working for a second called UIFigure
조회 수: 6 (최근 30일)
이전 댓글 표시
Hello, I have a UIFigure which opens a second UIFigure, but in this second UIFigure the keypress callback is not working. My app is very long so I just attached the code where the main UIfigures calls the other, the start function of the second UIfigure, and my keypress callback function. I already tried to focus on the figure with: figure(app.UIFigure), but it didn't work.
Thanks in advance.
%this code is in the main UIFigure
function goButtonPushed(app, event)
app.GraficasWindow = Graficas(app,app.OscCh,app.magnitudes); %Graficas is the name of my second uiFigure
end
%this is the starting function of second UIFIgure
function startupFcn(app, PDatorWindow, OscCh, magnitudes)
%bunch of other irrelevant things
end
%and this is the callback function
function UIFigureKeyPress(app, event)
key = event.Key;
display(key)
end
채택된 답변
추가 답변 (1개)
Jasvin
2023년 2월 10일
A possible workaround for this can be trying to change the focus to a UI element that’s within the second UI Figure via the focus() method (https://www.mathworks.com/help/matlab/ref/matlab.ui.figure.focus.html?s_tid=doc_ta). And from here you can try out options like setting the active figure via figure(app.UIFigure) again or if it's feasible, change the KeyPress callback from the UI Figure to this UI component that’s within the second UI Figure.
참고 항목
카테고리
Help Center 및 File Exchange에서 Develop uifigure-Based Apps에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!