ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / WLanguage / WLanguage functions / Controls, pages and windows / Drawing functions
  • Coordinates
  • Using the drawing functions
WINDEV
WindowsLinuxJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac Catalyst
Others
Stored procedures
Draws a rectangle:
  • in an Image control,
  • in a variable of type Image.
  • WINDEV in a variable of type WDPic (on the background layer),
  • WINDEV in a variable of type picLayer.
Note: To draw custom rectangles, use the dBorder function..
Linux Caution: In Linux, this function requires a specific configuration. For more details, see Drawing in WINDEV, WEBDEV and WINDEV Mobile.
// Initialise le dessin dans un champ Image
dStartDrawing(IMG_Dessin)

// Dessin d'un rectangle dont le fond est jaune clair
// et le bord bleu clair
dRectangle(10, 10, 50, 50, LightYellow, LightBlue)
WINDEVUser code (UMC)
// Dessin d'un rectangle dont le fond est jaune clair
// et le bord bleu clair
dRectangle(IMG_Dessin, 10, 10, 50, 50, LightYellow, LightBlue)
Syntax

Drawing a rectangle by specifying the coordinates of rectangle Hide the details

dRectangle([<Image>, ] <X1> , <Y1> , <X2> , <Y2> [, <Background> [, <Line>]])
<Image>: Optional control name or optional Image, WDPic or picLayer variable
WindowsLinuxJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • the name of a variable of type Image.
  • WINDEV the name of a variable of type WDPic. Only the background layer will be handled.
  • WINDEV the name of a variable of type picLayer.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
<X1>: Integer
X-coordinate (in pixels) of the upper-left corner of the rectangle.
<Y1>: Integer
Y-coordinate (in pixels) of the upper-left corner of the rectangle.
<X2>: Integer
X-coordinate (in pixels) of the lower-right corner of the rectangle.
<Y2>: Integer
Y-coordinate (in pixels) of the lower-right corner of the rectangle.
<Background>: Integer, constant or Background variable (optional)
  • Background color of rectangle. This color can be:
  • Background characteristics:
    • WINDEV variable of type Background. In this case, the gradient defined in the variable is ignored.
    • characteristics specified in the last call to dBackground if this parameter is not specified.
To use a gradient background color, call dRectangleGradient.
<Line>: Integer, constant or Border variable (optional)
  • Color of rectangle line. This color can be:
    • an RGB color (returned by RGB),
    • an HSL color (returned by HSL),
    • a WLanguage preset color,
    • WINDEV a variable of type Color,
    • identical to the color used for the background if this parameter is not specified and if dPen has not been used.
  • Characteristics of the line:
    • WINDEV variable of type Border. In this case, only the following properties are taken into account:
      • Color: if the Property corresponds to the constant UndefinedColorthe color defined during the last call to function dPen is used. If this function has not been used, the background color of the rectangle will be used.
      • Thickness: if the Property corresponds to the constant ThicknessIndefinedthe thickness defined during the last call to function dPen is used. If this function has not been used, the thickness will be set to 1.
      • Trait: if the property corresponds to TraitIndéfinithe stroke type defined during the last call to function dPen is used. If this function has not been used, the line will be solid.
      • characteristics specified in the last call to dPen if this parameter is not specified.
    WINDEVJava

    Drawing a rectangle via a Rectangle variable Hide the details

    dRectangle([<Image>, ] <Rectangle> [, <Background> [, <Line>]])
    <Image>: Optional control name or optional Image, WDPic or picLayer variable
    WindowsLinuxJavaUser code (UMC) Image to use. This image can correspond to:
    • the name of an Image control.
    • the name of a variable of type Image.
    • WINDEV the name of a variable of type WDPic. Only the background layer will be handled.
    • WINDEV the name of a variable of type picLayer.
    If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
    <Rectangle>: Rectangle variable
    Name of the Rectangle variable that defines the coordinates of the rectangle to draw.
    <Background>: Integer, constant or Background variable (optional)
    • Background color of rectangle. This color can be:
    • Background characteristics:
      • variable of type Background. In this case, the gradient defined in the variable is ignored.
        Java This type of variable is not available.
      • characteristics specified in the last call to dBackground if this parameter is not specified.
    To use a gradient background color, call dRectangleGradient.
    <Line>: Integer, constant or Border variable (optional)
    • Color of rectangle line. This color can be:
      • an RGB color (returned by RGB),
      • an HSL color (returned by HSL),
      • a WLanguage preset color,
      • a variable of type Color,
      • identical to the color used for the background if this parameter is not specified and if dPen has not been used.
    • Characteristics of the line:
      • WINDEV variable of type Border. In this case, only the following properties are taken into account:
        • Color: if the Property corresponds to the constant UndefinedColorthe color defined during the last call to function dPen is used. If this function has not been used, the background color of the rectangle will be used.
        • Thickness: if the Property corresponds to the constant ThicknessIndefinedthe thickness defined during the last call to function dPen is used. If this function has not been used, the thickness will be set to 1.
        • Trait: if the property corresponds to TraitIndéfinithe stroke type defined during the last call to function dPen is used. If this function has not been used, the line will be solid.
      • characteristics specified in the last call to dPen if this parameter is not specified.
    Remarks

    Coordinates

    Coordinates are specified with respect to the upper-left corner of the image or Image control (coordinates: (0,0)).

    Using the drawing functions

    The drawing functions can be used according to 2 methods:
    • Method 1: Using the dDrawingStartfunction
      • dStartDrawing must be called before any other drawing function. dStartDrawing is used to define the element (Image control or variable) to which the drawing functions will be applied.
      • When drawing on an Image control:
        • The drawing functions operate on a copy ("bitmap") of the image. You can use the drawing functions of Windows (via API or CallDLL32) but these functions must use the DC (Device Context) returned by dStartDrawing.
        • dEndDrawing and dStartDrawing must not be called in the same process.
          If function dEndDrawing is called in the same process as function dStartDrawing, the drawing will not appear: it will be automatically deleted.
    • WindowsLinuxJavaUser code (UMC) Method 2: specify design destination directly in syntax (via parameter)
      The <Image> parameter is used to specify directly the target of the drawing. dStartDrawing becomes useless. This function must be deleted.
    Related Examples:
    The drawing functions Unit examples (WINDEV): The drawing functions
    [ + ] Using the main drawing functions of WINDEV to:
    - Initialize an Image control for drawing
    - Draw simple shapes
    - Write a text into a drawing
    - Change the color in a drawing
    Business / UI classification: Neutral code
    Component: wd300pnt.dll
    Minimum version required
    • Version 9
    This page is also available for…
    Comments
    Click [Add] to post a comment

    Last update: 05/30/2025

    Send a report | Local help