如何让TI-Basic菜单程序执行选中选项后停止运行?
解决TI-Basic菜单程序选完选项后仍继续运行的问题
嘿,刚入门TI编程就自己写菜单程序,挺厉害的!你的问题其实是TI-Basic的一个默认特性导致的——它会从上到下依次执行所有代码,所以你选了选项1执行完Lbl 1的内容后,程序不会自动停下,会接着往下跑Lbl 2、Lbl 3的代码,直到整个程序结束。
要让程序显示完选中的内容就停住,其实很简单,只需要在每个标签对应的代码块最后加个Stop命令就行。Stop就像是给程序发个“任务完成,下班啦”的指令,直接终止运行,不会再碰后面的代码。
给你改好的代码示例:
Menu("Menu","asd",1,"asd",2,"asd",3,"asd",4,"asd",5,"^^^ fgh",6,"AS",7) Lbl 1 Disp "TEXT" Pause Stop // 显示完文本后直接停住 Lbl 2 ClrDraw RecallPic 0 Pause Stop // 显示完图片0后停住 Lbl 3 ClrDraw RecallPic 1 Pause Stop // 显示完图片1后停住 Lbl 4 ClrDraw RecallPic 2 Pause Stop // 显示完图片2后停住 Lbl 5 ClrDraw RecallPic 3 Pause Stop // 显示完图片3后停住 Lbl 6 // 这里放选项6要执行的代码 Pause Stop Lbl 7 // 这里放选项7要执行的代码 Pause Stop
如果你觉得每个标签都加Stop有点重复,还有个更整洁的办法:给程序加个统一的结束标签,每个选项执行完后跳过去再停止:
Menu("Menu","asd",1,"asd",2,"asd",3,"asd",4,"asd",5,"^^^ fgh",6,"AS",7) Lbl 1 Disp "TEXT" Pause Goto END // 跳去结束标签 Lbl 2 ClrDraw RecallPic 0 Pause Goto END Lbl 3 ClrDraw RecallPic 1 Pause Goto END // 其他选项同理... Lbl END Stop // 统一终止程序
这样以后要是想改终止的逻辑,只需要动Lbl END这里就行,不用挨个改每个标签。
总之核心就是:让程序在完成你选中的任务后,明确告诉它“别继续往下跑了”,Stop或者跳转后再Stop都能搞定~
内容的提问来源于stack exchange,提问作者laughincascade
相关产品推荐
相关产品推荐

