This document covers the following topics:
Retrieves miscellaneous non-client window dimensions and settings from the operating system. The "small caption" referred to below is the caption used for floating tool bar controls.
Note
All font descriptions are in the standard form used by the
FONT-STRING attribute.
Name/Data Type | Explanation |
---|---|
Border width (I4) | Output (optional parameter)
Thickness (in pixels) of the sizing border. |
Scroll width (I4) | Output (optional parameter)
Width (in pixels) of a vertical scroll bar. |
Scroll height (I4) | Output (optional parameter)
Height (in pixels) of a horizontal scroll bar. |
Caption width (I4) | Output (optional parameter)
Width (in pixels) of caption buttons. |
Caption height (I4) | Output (optional parameter)
Height (in pixels) of caption buttons. |
Caption font (A253) | Output (optional parameter)
Caption font string. |
Small caption width (I4) | Output (optional parameter)
Width (in pixels) of small caption buttons. |
Small caption height (I4) | Output (optional parameter)
Height (in pixels) of small caption buttons. |
Small caption font (A253) | Output (optional parameter)
Small caption font string. |
Menu width (I4) | Output (optional parameter)
Width (in pixels) of menu bar buttons. |
Menu height (I4) | Output (optional parameter)
Height (in pixels) of menu bar buttons. |
Menu font (A253) | Output (optional parameter)
Menu bar font string. |
Status font (A253) | Output (optional parameter)
Status bar font string. Note |
Message font (A253) | Output (optional parameter)
Message box font string. |
Response (I4) | Output
Natural error (if applicable). |
DEFINE DATA LOCAL 1 NONCLIENTMETRICS 2 BORDER-WIDTH (I2) 2 SCROLL-WIDTH (I2) 2 SCROLL-HEIGHT (I2) 2 CAPTION-WIDTH (I2) 2 CAPTION-HEIGHT (I2) 2 CAPTION-FONT (A80) 2 SMALL-CAPTION-WIDTH (I2) 2 SMALL-CAPTION-HEIGHT (I2) 2 SMALL-CAPTION-FONT (A80) 2 MENU-WIDTH (I2) 2 MENU-HEIGHT (I2) 2 MENU-FONT (A80) 2 STATUS-FONT (A80) 2 MESSAGE-FONT (A80) * 1 #FONT HANDLE OF FONT 1 #WIDTH (I4) 1 #HEIGHT (I4) END-DEFINE ... PROCESS GUI ACTION INQ-NON-CLIENT-METRICS WITH NONCLIENTMETRICS GIVING *ERROR * /* Create font based on status bar font description PROCESS GUI ACTION ADD WITH PARAMETERS PARENT = #DLG$WINDOW TYPE = FONT HANDLE-VARIABLE = #FONT STRING = NONCLIENTMETRICS.STATUS-FONT END-PARAMETERS GIVING *ERROR * /* Get width and height of text "Test" in status bar font PROCESS GUI ACTION TEXT-GET-EXTENT WITH #FONT 'Test' #WIDTH #HEIGHT GIVING *ERROR * /* Delete font we created if no longer needed PROCESS GUI ACTION DELETE WITH #FONT