How to add helpful options to the Status-Bar control

Question ID : 342
Created on 2024-03-08 at 2:48 AM
Author : Veryant Support [support@veryant.com]

Online URL : http://support.veryant.com/support/phpkb/question.php?ID=342



There are some user-friendly options that are often displayed on the status bar at the bottom of the screen.
These include whether the caps lock, num lock, and insert mode keys are on or off, as well as the current date and time.

isCOBOL's status-bar doesn't have these options, but they can be added with some OOP using the "Toolkit" and "KeyEvent" Java class.Attached is a sample that you can use.

The CLASS-ID program called "utility.cbl" will get the status of the num, caps, and ins keys as well as the current date and time.
The "test-statusbar.cbl" refers to this program to populate the status-bar.
For instance, this line in the SHOW-STATUS paragraph:

   modify hSt panel-index 2 panel-text utility:>caps()
Uses this method in the Utility.cbl file to determine if the caps lock is on or off:
   IDENTIFICATION DIVISION.
   METHOD-ID. caps as "caps".
   WORKING-STORAGE SECTION.
   77  state OBJECT REFERENCE boolean.
   77  l-string pic x any length.
 
   PROCEDURE DIVISION returning l-string. 
   MAIN.
      set state to Toolkit:>getDefaultToolkit():>getLockingKeyState(KeyEvent:>VK_CAPS_LOCK).
      if state
         move "Caps ON"  to l-string
      else
         move "Caps OFF" to l-string
      end-if
   END METHOD.
The screen with our enhanced status-bar looks like this:

And because the test-statusbar.cbl calls the "utility" class every second in a thread, the seconds roll forward on-screen.



Back to Original Question