Skip to content

Class: ColorDialog

Properties | Events | Methods | Index of Classes

Provides an interface to the Windows standard Color dialog

Hierarchy

cObject > ColorDialog

Show full hierarchy and direct subclasses

Library: Windows Application Class Library

Package: Colr_dlg.pkg

Description

The ColorDialog class provides an interface to the Windows standard Color dialog. The dialog will maintain its own list of custom colors and return the selected RGB color.

Sample

This example shows how to use a color dialog to select a color and to set custom colors.

Use dfAllEnt.pkg // standard
Use Colr_Dlg.pkg // ColorDialog class

Object oPanel is a Panel
    Set Size     To 80 150
    Set Location To 25 25
    Set Label    To 'Test of ColorDialog'

    Object oColorDlg is a ColorDialog
        Set SelectedColor To (RGB(255, 0, 0))

        Procedure Choose_Color
            Integer rgbColor bOK
            String sMessage

            Get Show_Dialog To bOK
            If bOK Begin
                Get SelectedColor To rgbColor

                Move 'COLOR SELECTED\n\n' To sMessage
                Append sMessage 'Red='   (R_From_RGB(rgbColor)) '\n'
                Append sMessage 'Green=' (G_From_RGB(rgbColor)) '\n'
                Append sMessage 'Blue='  (B_From_RGB(rgbColor))
                Send Info_Box sMessage
            End
        End_Procedure

        Procedure ShowCustomColors
            Integer rgbColor iLoop iRed iGreen iBlue
            String sMessage

            Move 'CUSTOM COLORS\n\n' To sMessage
            For iLoop From 0 To 15
                Get Custom_Color iLoop To rgbColor
                Move (R_From_RGB(rgbColor)) To iRed
                Move (G_From_RGB(rgbColor)) To iGreen 
                Move (B_From_RGB(rgbColor)) To iBlue
                Append sMessage 'Color ' iLoop 
                Append sMessage '= RGB(' iRed ',' iGreen ',' iBlue ')\n'
            Loop

            Send Info_Box sMessage
        End_Procedure

    End_Object

    Object oPick_bn is a Button
        Set Location To 20 20
        Set Size To 12 120
        Set Label To 'Pick a Color...'
        Procedure OnClick
            Send Choose_Color of oColorDlg
        End_Procedure
    End_Object

    Object oShow_bn is a Button
        Set Location To 50 20
        Set Size To 12 120
        Set Label To 'Show Custom Colors...'
        Procedure OnClick
            Send ShowCustomColors of oColorDlg
        End_Procedure
    End_Object

End_Object

Start_UI

Syntax

Use Colr_Dlg.pkg

Object object_name is a ColorDialog
    Set SelectedColor To rgb-color
End_Object

See Also

Info_Box