Displays a dialog box that allows the user to select and associate a system font with the specified font number. The SYSTEM-DIALOG FONT statement provides a dialog box appropriate to the graphical environment in which it runs.
SYSTEM-DIALOG FONT font-numberANSI-ONLYFIXED-ONLYMAX-SIZE point-sizeMIN-SIZE point-sizeUPDATE logical-variableIN WINDOW windowAn integer expression that returns an ABL font number (0 to 255), inclusive, which is defined in the setup file for your environment. The font dialog associates the ABL font specified by font-number with the system font the user selects in the dialog. The user confirms the selection and completes the dialog by choosing the OK button. The user interrupts the dialog without changing the font by choosing the Cancel button.Allows the font dialog to provide only fonts that contain character representations and that do not include graphic symbols.MAX-SIZE point-sizeMIN-SIZE point-sizeUPDATE logical-variableSpecifies a logical variable to return the status of the user’s font dialog interaction. If the user clicks on the OK button, the dialog sets logical-variable to TRUE. If the user chooses on the Cancel button, the dialog sets logical-variable to FALSE.IN WINDOW windowSpecifies the window from which the dialog box is displayed. The value window must be the handle of a window.The following procedure displays a dialog box that allows the user to change the font of either its radio set or its buttons. The radio set lists a font number for each selection: font 1 for the radio set and font 2 for the buttons. Choosing the OK button opens a font dialog to assign a new system font to the font number selected in the radio set. Note that the UPDATE option is not used to return a termination status because the dialog does not require the user to select a new font; it only provides the option. The procedure terminates when the user chooses the Cancel button.
DEFINE VARIABLE Font1 AS INTEGER NO-UNDO INITIAL 1.DEFINE VARIABLE Font2 AS INTEGER NO-UNDO INITIAL 2.DEFINE VARIABLE FontSelect AS INTEGER NO-UNDO INITIAL 1VIEW-AS RADIO-SET RADIO-BUTTONS "Font 1", 1, "Font 2", 2 FONT Font1.DEFINE BUTTON bOK LABEL "OK" FONT Font2.DEFINE BUTTON bCANCEL LABEL "Cancel" FONT Font2 AUTO-ENDKEY.FORMSKIP(0.5) SPACE(0.5)FontSelect SPACE(2) bOK SPACE(2) bCANCELSPACE(0.5) SKIP(0.5)WITH FRAME fFont TITLE "Choose frame fonts ..." VIEW-AS DIALOG-BOX.ON CHOOSE OF bOK IN FRAME fFont DO:IF INTEGER(FontSelect:SCREEN-VALUE IN FRAME fFont) = Font1 THENSYSTEM-DIALOG FONT Font1.ELSESYSTEM-DIALOG FONT Font2.END.UPDATE FontSelect bOK bCANCEL WITH FRAME fFont.
Note: The CHOOSE OF OK event trigger must reference the SCREEN-VALUE attribute of the FontSelect variable to obtain the latest value selected for its radio set. This is because the UPDATE statement has not yet completed during the event, and has not updated the FontSelect record buffer from the frame buffer. The initial value of FontSelect is its value in the record buffer immediately before the UPDATE statement executes.
![]()
For more information on defining font numbers, see OpenEdge Deployment: Managing ABL Applications.
![]()
Use the font-number with the FONT option to assign the selected font to a widget.
© 2012 Progress Software Corporation and/or its subsidiaries or affiliates. |