TI-Basic Z80 编程/菜单
外观
菜单((PRGM CTL D) 用于允许用户选择一个选项。通过使用菜单(, 可以列出用户可以选择的多项选项; 每个选项跳转到不同的标签。
的语法如下:菜单(:
Menu("title","text1",label1[,"text2",label2,...,"text7",label7])
- 在任何文本字符串的位置,可以替换一个字符串变量名(例如:Str1)
- 标题最大长度为 16 个字符
- 每个选项的最大长度为 14 个字符,任何额外的字符都会被截断
- 菜单最多可以有 7 个选项。尝试添加超过 7 个选项会导致参数错误在尝试执行命令时显示。
当用户通过按下 ENTER 在菜单中选择一个选项时,程序将跳转到Lbl与在菜单(语句中定义的相同名称。
如果菜单(语句引用了不存在的Lbl,则会返回一个标签错误。
要创建一个包含多个选项的简单菜单
- Menu("PHYSICS","PE",A,"KE",B,"WEIGHT",C)
- Lbl A
- 语句
- Lbl B
- 语句
- Lbl C
- 语句
执行时显示以下内容
PHYSICS 1:PE 2:KE 3:WEIGHT
该菜单(函数允许大量使用静态菜单,但当需要更多选项或更具交互性的动态菜单时。以下方法使用getKey来实现此目的。
注意:以下示例使用文本命令,该命令将文本绘制到图形屏幕上。这将在后面的章节中详细介绍。
:Text(1,1,"PHYSICS") // 将文本绘制到图形屏幕上 :Text(11,1,"1. POTENTIAL ENERGY") :Text(21,1,"2. KINETIC ENERGY") :Text(31,1,"3. APPARENT WEIGHT") :Delvar A // 通过 getKey 获取用户输入 :Repeat A :getKey→A :End :If A=92:Goto A // 处理用户输入 :If A=93:Goto B :If A=94:Goto C :Lbl A
- 语句
- Lbl B
- 语句
- Lbl C
- 语句
尝试以下示例以练习使用菜单(命令。
物体的势能由 定义,其中 m 是以千克为单位的质量,g 是重力,h 是以米为单位的高度。物体的动能由 定义,其中 m 是以千克为单位的质量,v 是以米每秒为单位的速度。物体的视重由 定义,其中 m 是以千克为单位的质量,g 是重力。使用菜单(命令编写一个简单的程序,用户可以从之前定义的每个公式中选择,输入已知值,并接收输出。
解决方案
|
---|
重要的是使用停止命令,以便在Lbl A和B下的语句完成执行后,后面的标签不会执行。但是,在停止命令之后不需要Lbl C语句,因为它是程序的结尾。 :Menu("PHYSICS","PE",A,"KE",B,"WEIGHT",C) :ClrHome :Lbl A :Prompt M,H,G :Disp "PE = ",M*H*G :Stop :Lbl B :Prompt M,V :Disp "KE = ",(1/2)*M*V^2 :Stop :Lbl C :Prompt M,G :Disp "W = ",G*M
|