The utility functions provide a way to obtain and pass Windows information to external functions and can be used as arguments in the PowerScript Send function. The following table describes the PowerScript utility functions.
Five utility functions
Function |
Return value |
Purpose |
---|---|---|
Handle |
UnsignedInt |
Returns the handle to a specified object. |
IntHigh |
UnsignedInt |
Returns the high word of the specified Long value. IntHigh is used to decode Windows values returned by external functions or the LongParm attribute of the Message object. |
IntLow |
UnsignedInt |
Returns the low word of the specified Long value. IntLow is used to decode Windows values returned by external functions or the LongParm attribute of the Message object. |
Long |
Long |
Combines the low word and high word into a Long. The Long function is used to pass values to external functions. |
LongLong |
LongLong |
Combines the low word and high word into a LongLong. The LongLong function is used to pass values to external functions. |
Examples
This script uses the external function IsZoomed to test whether the current window is maximized. It uses the Handle function to pass a window handle to IsZoomed. It then displays the result in a SingleLineEdit named sle_output:
boolean Maxed Maxed = IsZoomed(Handle(parent)) if Maxed then sle_output.Text = "Is maxed" if not Maxed then sle_output.Text = "Is normal"
This script passes the handle of a window object to the external function FlashWindow to change the title bar of a window to inactive and then active:
// Declare loop counter and handle to window object int nLoop uint hWnd // Get the handle to the PowerBuilder window. hWnd = handle(This) // Make the title bar inactive. FlashWindow (hWnd, TRUE) //Wait ... For nLoop = 1 to 300 Next // Return the title bar to its active color. FlashWindow (hWnd, FALSE)