matlab - 在 Matlab 中按下一个键停止无限循环

标签 matlab while-loop keypress

我有一个 while 循环,无限循环,我想在按下键盘键时停止它。

伪代码:

While(1)
    do stuff;

    listening for key;
    if key is pressed
        break;
    end
end

函数 waitforbuttonpress 让我按下键,所以运气不好。

我在网上找不到任何选项。

最佳答案

好吧,我知道这有点晚了,但经过长时间的寻找,我找到了解决方案。当图形窗口获得焦点时,您可以这样做:

set(gcf,'currentchar',' ')         % set a dummy character
while get(gcf,'currentchar')==' '  % which gets changed when key is pressed
   do_stuff()
end

当焦点位于图形中时按下某个键时,它会设置属性“currentchar”。在 R2010b 中测试。

关于matlab - 在 Matlab 中按下一个键停止无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23788722/

相关文章:

c++ 相当于 matlab max(find(array < x) 和 min(find(array > x)

matlab - 如何提高 .png 输出中的横向图像分辨率?

php - 如何循环遍历 PDO 语句并在 if 语句上写入数据

c# - 控制台窗口颜色、KeyUp、KeyDown 和 KeyPress 事件

c++ - Matlab 到 C++ 的翻译

matlab - 如何在 matlab 中求解具有某些终端条件的 ODE 系统?

python - 房屋和存款的年利息

c - 用字符串中的单个 'a' 替换三个 '*'

python - 将按键发送到嵌入式 Pygame

javascript - 如何在纯 JavaScript 对象(非 DOM)上创建按键事件系统