Search code examples
basicti-basic

How to create TI-BASIC (TI-84+) input forms?


In the TI-BASIC programming language (Specifically TI-84+), how do you create input forms, such as the ones included in the default apps on the TI-84+.

The image included here shows an example of what I'm trying to create: A menu that you can scroll through and input multiple variables freely before executing a function

Additionally, is it possible to make this menu dynamically-updating as variables are entered?


Solution

  • In the TI-BASIC programming language (Specifically TI-84+), how do you create input forms, such as the ones included in the default apps on the TI-84+.

    There are many ways to ask for input in your program:

    • Prompt: Asks for input and stores it in a variable. For example, Prompt A. Simplest way to ask for input, but not very visually appealing.

    • Input: Similar to the Prompt command, except that now you can include text within the input. For example, Input "What is your name?",A.

    • Menu(: Multiple choice input, and each choice is connected to a Lbl marker somewhere else in the script. Much like the error screen with the quit/goto choices that you've probably seen. For example, Menu("Are you a boy or a girl?","Boy",B,"Girl",G).

    • getKey: Checks if a certain key is pressed, and will output True (1) if that key is pressed. For example, getKey 105. See here for which numbers each key corresponds to.

    The image included here shows an example of what I'm trying to create: A menu that you can scroll through and input multiple variables freely before executing a function https://i.sstatic.net/eKlpE.jpg

    I'm afraid that's not possible in programs. You can either put in multiple inputs, or you might be interested in looking into making apps instead.

    Additionally, is it possible to make this menu dynamically-updating as variables are entered?

    If you're talking about the text on top of the screenshot, yes you can; just put a Disp command or something after each line of Input, so that it continuously overwrites the text above with new text after you input a variable.