Hiding and showing the APRO Terminal's cursor
Here's a quick hint for you old style (pre-APRO 3) Terminal users. Have you ever wished you could hide the "cursor" in the Terminal component's display while complex screens were being displayed? Well, you can. This is possible thanks to the underlying Windows architecture of the Terminal component in Async Professional.

The first thing to understand is that the Terminal component is really a VCL wrapper around a custom window that is created deep inside Async Professional. This fact is manifested at the VCL level by the Terminal's Handle property. The Handle is, in fact, a window handle to that low-level custom window.


Since it uses the Windows caret mechanism, you can use the Windows API calls that manage the caret to hide the Terminal's cursor.


The second thing to know is that in order to represent the location in the window where typed text will appear, the Terminal component uses the Windows "caret" which some folks also call the "insertion point" and in text mode screens is traditionally referred to as the "cursor." Under Windows that latter term has (for good or ill) been appropriated to refer to the mouse pointer.

Since the Terminal component is using the Windows caret mechanism, you can use the Windows API calls that manage the caret to hide and show the Terminal Cursor at run-time. In particular:

To Hide the Cursor:


To Show the Cursor again:


Note: The APRO Terminal component has to receive input focus in order for the caret to re-show itself after it has been hidden. This shouldn't be a problem because you will generally want to re-show the cursor in order for a user to actually type something thus giving the Terminal focus anyhow.

This site is not affiliated, endorsed, or otherwise associated with the entity formerly known as TurboPower Software. The owners and maintainers of Aprozilla.com were merely meager employees of the aforementioned organization, providing this site out of the pure goodness of their collective hearts. SourceForge.net Logo

Last updated: July 22, 2003.