So, I've been working on this for a few hours, migrating from a console program to a simple window program using a TMemo control. I'm getting there.
To prevent what would be considered normal functionality in this TMemo control (such as the ability to highlight text, edit, move the cursor up and down, etc.), which I don't want any of, how do I disable all of that? Do I need to set event handlers for certain user-driven functions such as noted above and don't have them call the base event handler code? Or is there an easier way? Thanks.
Edit: I'm still not sure if this is the best approach to take (using this control). The way this application works is, there's a series of cascaded menus that the user makes single-keystroke selections from. After 2, 3, or 4 (usually) of these selections they have to enter in some text and hit Return. It does what was requested and restarts at the topmost menu. Something similar to this:
$Run, Load, Set, Display, Transfer, scheduLe, Bye? S
$Value, Definition, History, Quit? V
Item: ABCOBJECT (CR)
Value: 65 (CR)
Ok
$Run, Load, Set, Display, Transfer, scheduLe, Bye?
So I know I can use the KeyPressed event to capture keypresses, but then (since the event handler doesn't have any idea where in this menu tree the user is at) I'd have to set status values or use some other method of identifying every unique 'location' in the menuing tree where the user is. Etc.
Hope that explanation makes sense. If there was a different control that worked more like the non-GUI console that'd probably be better.