Description |
The TRect type is a record holding rectangle values as either 4 coordinates or 2 points.
This is a classic example of the use of the Case part of a record.
When creating from two points TopLeft and BottomRight, you can pass two TPoint values, or use the Point function to generate them.
|
|
Related commands |
Bounds |
|
Create a TRect value from top left and size values |
Point |
|
Generates a TPoint value from X and Y values |
PointsEqual |
|
Compares two TPoint values for equality |
PtInRect |
|
Tests to see if a point lies within a rectangle |
Rect |
|
Create a TRect value from 2 points or 4 coordinates |
TPoint |
|
Holds X and Y integer values |
|
|
|
Example code : Create one rectangle manually, another using Rect |
// Full Unit code. // ----------------------------------------------------------- // You must store this code in a unit called Unit1 with a form // called Form1 that has an OnCreate event called FormCreate. unit Unit1; interface uses Types, // Unit containing the TRect command Classes, Forms, Dialogs; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); end; var Form1: TForm1; implementation {$R *.dfm} // Include form definitions procedure TForm1.FormCreate(Sender: TObject); var
rectangle1, rectangle2 : TRect;
begin // Set up the first rectangle manually
rectangle1.Left := 0;
rectangle1.Top := 0;
rectangle1.Right := 40;
rectangle1.Bottom := 60;
// Set up the second rectangle using the Rect function
rectangle2 := Rect(Point(20, 40), Point(60, 80));
// Display the top left and bottom right coords of each rectangle
ShowMessageFmt('Rectangle 1 coords = %d,%d,%d,%d',
[rectangle1.Left,
rectangle1.Top,
rectangle1.Right,
rectangle1.Bottom]);
ShowMessageFmt('Rectangle 2 coords = %d,%d,%d,%d',
[rectangle2.Left,
rectangle2.Top,
rectangle2.Right,
rectangle2.Bottom]);
end; end.
|
Hide full unit code |
Rectangle 1 coords = 0,0,40,60
Rectangle 2 coords = 20,40,60,80
|
|