ΠΡΠ½ΠΎΠ²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° C#. ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ alpha Π·Π°Π΄Π°Π΅Ρ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ²Π΅ΡΠ°. Π§Π΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ ΡΡΠΎ ΡΠΈΡΠ»ΠΎ, ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ Π½Π°ΡΡΡΠ΅Π½Π½ΠΎΡΡΡ ΡΠ²Π΅ΡΠ° ΠΈ ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠΎΡ ΡΠ²Π΅Ρ. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° alpha ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 0 Π΄ΠΎ 255. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ 0 ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΉ (Π±Π΅ΡΡΠ²Π΅ΡΠ½ΡΠΉ), Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 255? ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π½Π°ΡΡΡΠ΅Π½Π½ΡΠΉ (Π½Π΅ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΉ) ΡΠ²Π΅Ρ. ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΡΠ½ΠΎΠ²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° C#. ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠ°Π±ΠΎΡΠ°ΡΠΎΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ° № 6
ΠΡΠ½ΠΎΠ²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° C#
ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
ΠΡΠ½ΠΎΠ²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° C# ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΈΠΌΠ΅Π½ System. Drawing? ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ:
Β· ΡΠΎΡΠΊΠΈ (ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ)? Point ΠΈ PointF
Β· ΡΠ°Π·ΠΌΠ΅ΡΠ°? Size ΠΈ SizeF
Β· ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΡΡ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ? Rectangle ΠΈ RectangleF.
ΠΡΠΊΠ²Π° F Π² ΠΊΠΎΠ½ΡΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΎΠ±ΡΡΠ½ΡΡ ΡΡΡΡΠΊΡΡΡ (Π±Π΅Π· F), ΠΏΠΎΠ»Ρ ΡΡΡΡΠΊΡΡΡΡ ΠΈΠΌΠ΅ΡΡ Π½Π΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²Π΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° (float).
Π‘ΡΡΡΠΊΡΡΡΠ° Size
Π‘ΡΡΡΠΊΡΡΡΠ° Size ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠΈΡΠΈΠ½Ρ ΠΈ Π²ΡΡΠΎΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈ ΠΈΠΌΠ΅Π΅Ρ, Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΎΡΠΊΡΡΡΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° Width ΠΈ Height, Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΊΠ°ΠΊ Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ, ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ. ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Size Ρ Π½ΡΠ»Π΅Π²ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ Width ΠΈ Height Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ Π·Π°ΠΏΠΈΡΡ:
Size sz = new Size ();
ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² Π² ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
sz.Width = 40;
sz.Height = 60;
Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΄Π²Π° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ:
public Size (int, int);
public Size (Point);
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ, Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ:
Size sz1= new Size (10,20); // sz1. Width = 10, sz1. Height = 20;
Size sz2 = new Size (15,50); // sz2. Width = 15, sz2. Height = 50;
Π‘ΡΡΡΠΊΡΡΡΠ° Point
Π‘ΡΡΡΠΊΡΡΡΠ° Point ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΡΠΊΡΡΡΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° X ΠΈ Y ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅, ΠΊΠ°ΠΊ Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ, ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ.
ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΎΡΠΊΠΈ «pt» ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ:
Point pt = new Point ();
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠΎΡΠΊΠΈ ΠΎΠ±Π½ΡΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² X ΠΈ Y.
Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΡΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
pt.X =25;
pt.Y=75;
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΡ ΡΠΎΡΠΊΡ ΠΊΠ»Π°ΡΡΠ° Point, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ, ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ:
public Point (Size);
public Point (int, int);
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
Point pt1 = new Point (10,20); // pt1. X =10, pt1. Y=20
Size szm = new Size (27,45);
Point pt2 = new Point (szm); // pt2. X=27, pt2. Y=45
ΠΠ΅ΡΠΎΠ΄ ΠΊΠ»Π°ΡΡΠ°:
public void Offset (int);
ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΠΈΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΡΠΊΠΈ ΠΏΠΎ ΡΠΎΡΠΌΡΠ»Π°ΠΌ:
X=X+dx ΠΈ Y=Y+dy;
Π‘ΡΡΡΠΊΡΡΡΠ° Rectangle
Π‘ΡΡΡΠΊΡΡΡΠ° ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°. ΠΠ»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°, Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ ΠΈ ΡΡΠ΅Π½ΠΈΡ:
Location? ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ° Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°
X? ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ x-ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
Y? ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ y-ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
Size? ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
Height? ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π²ΡΡΠΎΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
Width? ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΈΡΠΈΠ½Ρ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°:
Π‘Π²ΠΎΠΉΡΡΠ²Π° ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ:
Left ΠΈ Top? ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ X ΠΈ Y ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
Right ΠΈ Bottom? ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ X ΠΈ Y ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΏΡΠ°Π²ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
Π ΡΡΡΡΠΊΡΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Π΄Π²Π° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ:
public Rectangle (
int x, // x-ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ° Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°
int y, // y-ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ° Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°
int width, // ΡΠΈΡΠΈΠ½Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°
int height // Π²ΡΡΠΎΡΠ° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°
);
public Rectangle (
Point location, // ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ° Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°
Size size // ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°
);
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΈ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ² ΠΏΡΠΈ ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ:
Point pt = new Point (10,15);
Size sz = new Size (50,70);
Rectangle rct = new Rectangle (pt, sz);
Rectangle rect = new Rectangle (20,20,50,30);
Π‘ΡΡΡΠΊΡΡΡΠ° Rectangle ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ΄ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ². Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ .
ΠΠ΅ΡΠΎΠ΄:
public void Intersect (Rectangle);
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΡΡΠΊΡΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ². ΠΡΠ»ΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅ΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΡ, Π²ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΡΡΡΠΊΡΡΡΡ ΠΎΠ±Π½ΡΠ»ΡΡΡΡΡ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
Rectangle rect, rct;
rect = new Rectangle (20,25,50,55);
rct = new Rectangle (10,10,30,40);
rect.Intersect (rct);
Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ΄Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ° rect ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
X=20, Y=25, Width=20, Height=25.
ΠΠ΅ΡΠΎΠ΄:
public static Rectangle Union (Rectangle a, Rectangle b);
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΡΡΠΊΡΡΡΡ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΉ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΌ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ Π² ΡΠ΅Π±Ρ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ a ΠΈ b.
ΠΠ΅ΡΠΎΠ΄Ρ:
public void Offset (Point pos);
public void Offset (int x, int y);
ΠΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΌΠ΅ΡΠ°ΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π»Π΅Π²ΠΎΠΉ Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΠΎΡΠΊΠΈ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ° ΠΏΠΎ ΠΎΠ±Π΅ΠΈΠΌ ΠΎΡΡΠΌ Π½Π° Π²Π΅Π»ΠΈΡΠΈΠ½Ρ, Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°.
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠ° ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠ° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² ΡΡΡΡΠΊΡΡΡΡ System.Drawing.Color. ΠΠ»Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΡΠ²Π΅ΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΊΠ»Π°ΡΡΠ°:
public static Color. FromArgb (int red, int green, int blue);
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° red, green ΠΈ blue Π·Π°Π΄Π°ΡΡ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎΡΡΡ ΠΊΡΠ°ΡΠ½ΠΎΠΉ, Π·Π΅Π»Π΅Π½ΠΎΠΉ ΠΈ ΡΠΈΠ½Π΅ΠΉ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ ΡΠ²Π΅ΡΠ°. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΡΠ²Π΅ΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 0 Π΄ΠΎ 255. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ 224 ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ²Π΅ΡΠΎΠ².
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
Color crR = Color. FromArgb (255,0,0); // ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ crR? ΠΊΡΠ°ΡΠ½ΡΠΉ ΡΠ²Π΅Ρ
Color crG = Color. FromArgb (0,255, 0); // ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ crG? Π·Π΅Π»Π΅Π½ΡΠΉ ΡΠ²Π΅Ρ
Color crB = Color. FromArgb (0,0,255); // ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ crB? ΡΠΈΠ½ΠΈΠΉ ΡΠ²Π΅Ρ ΠΠ»Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΡΠ²Π΅ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ΅Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² FromArgb:
public static Color FromArgb (int alpha, Color cr);
public static Color FromArgb (int alpha, int red, int green, int blue);
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ alpha Π·Π°Π΄Π°Π΅Ρ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ²Π΅ΡΠ°. Π§Π΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ ΡΡΠΎ ΡΠΈΡΠ»ΠΎ, ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ Π½Π°ΡΡΡΠ΅Π½Π½ΠΎΡΡΡ ΡΠ²Π΅ΡΠ° ΠΈ ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠΎΡ ΡΠ²Π΅Ρ. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° alpha ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 0 Π΄ΠΎ 255. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ 0 ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΉ (Π±Π΅ΡΡΠ²Π΅ΡΠ½ΡΠΉ), Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 255? ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π½Π°ΡΡΡΠ΅Π½Π½ΡΠΉ (Π½Π΅ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΉ) ΡΠ²Π΅Ρ.
Π‘ΡΡΡΠΊΡΡΡΠ° Color ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π±ΠΎΠ»Π΅Π΅ 200 ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ², Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ. ΠΡΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° Π·Π°Π΄Π°ΡΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ, ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅, ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ? ΡΠ²Π΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΡΡ Π²ΡΠ΅ΠΌΠΈ WEB Π±ΡΠ°ΡΠ·Π΅ΡΠ°ΠΌΠΈ.
ΠΡΠΈΠΌΠ΅Ρ:
Color clr2 = Color. Beige; // Π±Π΅ΠΆΠ΅Π²ΡΠΉ
Color clr3 = Color. Magenta; // ΡΠΈΡΠ΅Π½Π΅Π²ΡΠΉ
Color clr4 = Color. Orange; // ΠΎΡΠ°Π½ΠΆΠ΅Π²ΡΠΉ
Color clr2 = Color. Crimson; // ΠΌΠ°Π»ΠΈΠ½ΠΎΠ²ΡΠΉ ΠΠΈΡΡΠΈ ΠΈ ΠΏΠ΅ΡΡΡ ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠΈΡΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ΅ΡΡΠ΅Π² ΠΈ ΠΊΠΈΡΡΠ΅ΠΉ.
ΠΠΈΡΡΠΈ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΡ ΠΎΡ ΠΊΠ»Π°ΡΡΠ° System.Drawing.Brush. ΠΠ»Π°ΡΡ Brush ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΌ ΠΊΠ»Π°ΡΡΠΎΠΌ, ΡΠΎ Π΅ΡΡΡ Π½Π΅Π»ΡΠ·Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΡΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°. Π‘ΠΏΠ»ΠΎΡΠ½ΡΠ΅ ΠΊΠΈΡΡΠΈ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ ΠΊΠ»Π°ΡΡΠ° System.Drawing.SolidBrush, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
Brush br2 = new SolidBrush (Color.Magenta);
Brush br3 = new SolidBrush (Color.FromArgb (200,10,120));
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ color ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° public SolidBrush (Color color);
ΠΊΠ»Π°ΡΡΠ° SolidBrush Π·Π°Π΄Π°Π΅Ρ ΡΠ²Π΅Ρ ΡΠΏΠ»ΠΎΡΠ½ΠΎΠΉ ΠΊΠΈΡΡΠΈ.
Π ΠΊΠ»Π°ΡΡΠ΅ System.Drawing.Brushes ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ², Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΡ ΠΊΠΈΡΡΡ ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΠ²Π΅ΡΠΎΠ². Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΠΊΠΈΡ ΠΊΠΈΡΡΠ΅ΠΉ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Brush brr = Brushes. Orange;
Π ΠΊΠ»Π°ΡΡΠ΅ System.Drawing.Drawing2D.HatchBrush ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΡΡΡΠΈΡ ΠΎΠ²ΡΠ΅ ΠΊΠΈΡΡΠΈ.
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ ΠΊΠ»Π°ΡΡΠ°:
public HatchBrush (HatchStyle hatchstyle, Color foreColor, Color backColor);
public HatchBrush (HatchStyle hatchstyle, Color foreColor);
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:
foreColor? ΡΠ²Π΅Ρ ΡΡΡΠΈΡ Π° ΠΊΠΈΡΡΠΈ;
backColor? ΡΠ²Π΅Ρ ΡΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ ΡΡΡΠΈΡ Π° ΠΊΠΈΡΡΠΈ (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ? ΡΠ΅ΡΠ½ΡΠΉ ΡΠ²Π΅Ρ);
hatchstyle? ΡΡΠΈΠ»Ρ ΡΡΡΠΈΡ ΠΎΠ²ΠΎΠΉ ΠΊΠΈΡΡΠΈ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΡΡΠΈΠ»Π΅ΠΉ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΈΠΏΠΈΡΠ½ΡΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ:
Cross? ΡΠ΅ΡΠ΅ΡΡΠ°ΡΠ°Ρ ΠΊΠΈΡΡΡ;
DiagonalCross? Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΠ΅ΡΡΠ°ΡΠ°Ρ ΠΊΠΈΡΡΡ;
Horizontal? Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½Π°Ρ ΡΡΡΠΈΡ ΠΎΠ²ΠΊΠ°;
Vertical? Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½Π°Ρ ΡΡΡΠΈΡ ΠΎΠ²ΠΊΠ°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΈΡΡΠΈ Ρ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠΈΡ ΠΎΠ²ΠΊΠΎΠΉ ΡΠΈΠ½Π΅Π³ΠΎ ΡΠ²Π΅ΡΠ° ΠΈ ΡΠΎΠ½ΠΎΠ²ΡΠΌ ΡΡΡΠΈΡ ΠΎΠΌ Π±Π΅ΠΆΠ΅Π²ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ° Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Brush br1 = new HatchBrush (HatchStyle.Vertical, Color. Blue, Color. Beige);
ΠΠ΅ΡΡΡ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΠΊΠ»Π°ΡΡΠΎΠΌ System.Drawing.Pen.
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ ΠΊΠ»Π°ΡΡΠ°:
public Pen (Color color);
public Pen (Color color, float width);
public Pen (Brush brush);
public Pen (Brush brush, float width);
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:
color? ΡΠ²Π΅Ρ ΠΏΠ΅ΡΠ°;
width? ΡΠΎΠ»ΡΠΈΠ½Π° ΠΏΠ΅ΡΠ°;
brush ?ΠΊΠΈΡΡΡ.
ΠΡΠΈΠΌΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ΅ΡΡΠ΅Π²:
Pen pn = new Pen (Color. Magenta);
Pen pn1 = new Pen (Color.Orange, 5);
Pen pn2 = new Pen (Brushes.Orange);
Pen pn3 = new Pen (Brushes.Magenta, 10);
Pen pn4 = new Pen (Color.FromArgb (125,155, 0));
Pen pn5 = new Pen (Color.FromArgb (25,155,200), 10);
Π ΠΊΠ»Π°ΡΡΠ΅ System.Drawing.Pens ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ², ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΡ ΠΏΠ΅ΡΡΡ Ρ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΠ²Π΅ΡΠΎΠΌ ΠΈ ΡΠΎΠ»ΡΠΈΠ½ΠΎΠΉ Π² ΠΎΠ΄ΠΈΠ½ ΠΏΠΈΠΊΡΠ΅Π»Ρ. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΠΊΠΈΡ ΠΏΠ΅ΡΡΠ΅Π² Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Pen pn6 = Pens. Brown;
Pen pn7 = Pens. Magenta;
Π ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΉ ΠΈ ΡΠΈΠ³ΡΡ
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΊΠ»Π°ΡΡΠ° .NET System.Drawing.Graphics. ΠΠ»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΉ ΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΠΎΠΊΠ½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ, Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΡΠ°Π±ΠΎΡΡΡ ΠΎΠ±Π»Π°ΡΡΡ ΠΎΠΊΠ½Π°.
ΠΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π² ΡΡΠ΅Π΄Π΅ .NET ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΠΎΠ²Π°Π½ («Π·Π°Π²Π΅ΡΠ½ΡΡ») Π² Π±Π°Π·ΠΎΠ²ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅ System.Drawing.Graphics. ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠ»Π°ΡΡΠ° Graphics Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ CreateGraphics (), Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠΉ ΡΡΡΠ»ΠΊΡ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Graphics:
Graphics dc = CreateGraphics ();
ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ dc ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ Π²ΡΠ²ΠΎΠ΄ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΠΎΠΊΠ½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ»Π°ΡΡ Graphics ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΡ ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΠ³ΡΡΡ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ .
Π ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΠΎΠ² ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ² ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²:
public void DrawRectangle (Pen pen, Rectangle rect);
public void DrawRectangle (Pen pen, int x, int y, int width, int height);
public void DrawRectangle (Pen pen, float x, float y, float width, float height);
Π ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΠΎΠ² ΡΠ»Π»ΠΈΠΏΡΠΎΠ² ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²:
public void DrawEllipse (Pen pen, Rectangle rect);
public void DrawEllipse (Pen pen, int x, int y, int width, int height);
public void DrawEllipse (Pen pen, float x, float y, float width, float height);
Π ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°ΠΊΡΠ°ΡΠ΅Π½Π½ΡΡ ΡΠ»Π»ΠΈΠΏΡΠΎΠ² ΠΈ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ² ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²:
public void FillEllipse (Brush brush, Rectangle rect);
public void FillEllipse (Brush brush, int x, int y, int width, int height);
public void FillEllipse (Brush brush, float x, float y, float width, float height);
public void FillRectangle (Brush brush, Rectangle rect);
public void FillRectangle (Brush brush, int x, int y, int width, int height);
public void FillRectangle (Brush brush, float x, float y, float width, float height);
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΎΠ·Π½Π°ΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
pen? ΠΏΠ΅ΡΠΎ;
brush? ΠΊΠΈΡΡΡ;
rect? ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ;
Ρ ? ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ° Ρ Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
y? ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ° Ρ Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
width? ΡΠΈΡΠΈΠ½Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
height ?Π²ΡΡΠΎΡΠ° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°;
Π ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΉ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²:
public void DrawLine (Pen pen, Point pt1, Point pt2);
public void DrawLine (Pen pen, PointF pt1, PointF pt2);
public void DrawLine (Pen pen, int x1, int y1, int x2, int y2);
public void DrawLine (Pen pen, float x1, float y1, float x2, float y2);
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΎΠ·Π½Π°ΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
pen? ΠΏΠ΅ΡΠΎ;
pt1? Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΊΠ° ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ;
pt2? ΠΊΠΎΠ½Π΅ΡΠ½Π°Ρ ΡΠΎΡΠΊΠ° ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ;
Ρ 1 ΠΈ Ρ1? ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ;
Ρ 2 ΠΈ Ρ2? ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ;
ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ:
dc.DrawRectangle (Pens.OrangeRed, 5,10,25,45);
dc.DrawEllipse (Pens.Magenta, 100,125,20,15);
dc.FillEllipse (Brushes.BlueViolet, 45,50,20,15);
dc.DrawLine (Pens.Green, 20,40,60,70);
Π ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ° ΠΠ»Ρ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ΅Π½Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ DrawString. ΠΡΠΈΠ²Π΅Π΄Π΅ΠΌ ΡΡΠΈ ΠΈΠ· ΡΠ΅ΡΡΠΈ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΎΠΊ ΠΌΠ΅ΡΠΎΠ΄Π° DrawString:
public void DrawString (string s, Font font, Brush brush, PointF point);
public void DrawString (string s, Font font, Brush brush, RectangleF layoutRectangle);
public void DrawString (string s, Font font, Brush brush, float x, float y);
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:
sΡΡΡΠΎΠΊΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²,
font — ΡΡΠΈΡΡ ΡΠ΅ΠΊΡΡΠ°,
brush — ΠΊΠΈΡΡΡ,
point — ΡΠΎΡΠΊΠ°, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠ°Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ°,
x ΠΈ y — Π·Π°Π΄Π°ΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ°
layoutRectangle — ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, Π²Π½ΡΡΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠ΅ΠΊΡΡ, Π΅ΡΠ»ΠΈ ΠΆΠ΅ ΡΠ΅ΠΊΡΡ Π½Π΅ Π²ΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΠΎΠ±Π»Π°ΡΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°, ΡΠΎ ΠΎΠ½ (ΡΠ΅ΠΊΡΡ) ΠΎΠ±ΡΠ΅Π·Π°Π΅ΡΡΡ.
ΠΠ»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π΄Π°ΡΡ ΡΠΈΠΏ ΠΈ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠΈΡΡΠ°, ΠΊΠΈΡΡΡ ΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠ΅ΠΊΡΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
Font fnt = new Font («Arial», 10); //Π¨ΡΠΈΡΡ Arial, ΡΠ°Π·ΠΌΠ΅Ρ 10
dc.DrawString («ΠΡΠΈΠ²Π΅Ρ!», fnt, Brushes. Green, 10,20);
ΠΡΠΈΠΌΠ΅Ρ 1. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΈ ΡΠ΅Π»ΡΠΊΠ΅ Π»Π΅Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ Π½Π° ΠΎΠΊΠ½Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡ Π² ΠΌΠ΅ΡΡΠ΅ ΡΠ΅Π»ΡΠΊΠ° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°, Π° ΠΏΡΠΈ ΡΠ΅Π»ΡΠΊΠ΅ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ Π² ΠΌΠ΅ΡΡΠ΅ ΡΠ΅Π»ΡΠΊΠ° Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π·Π°ΠΊΡΠ°ΡΠ΅Π½Π½ΡΠΉ ΡΠ»Π»ΠΈΠΏΡ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ Windows Application. Π ΠΎΠΊΠ½Π΅ ΡΠ²ΠΎΠΉΡΡΠ² ΡΠΎΡΠΌΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅ MouseDown, Π΄Π²Π°ΠΆΠ΄Ρ ΡΠ΅Π»ΠΊΠ½ΡΡΡ Π½Π° Π½Π°Π·Π²Π°Π½ΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΡ ΠΌΡΡΠΊΠΎΠΉ. Π ΠΏΠΎΡΠ²ΠΈΠ²ΡΠ΅ΠΉΡΡ Π·Π°Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π°-ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΡΠΎΠ±ΡΡΠΈΡ Π²ΡΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠ΄, ΡΡΠΎΠ±Ρ ΡΠ΅Π»ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π²ΡΠ³Π»ΡΠ΄Π΅Π»ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
private void Form1_MouseDown (object sender, System.Windows.Forms.MouseEventArgs e)
{
Graphics dc = CreateGraphics ();
Font fnt = new Font («Coyrier», 10);
if (e.Button.ToString ()== «Left»)
{
dc.DrawRectangle (Pens.OrangeRed, e. X, e. Y, 15,15);
dc.DrawString («X="+e.X.ToString ()+» Y="+e.Y.ToString (), fnt, Brushes. Green, e. X, e. Y+20);
}
if (e.Button.ToString ()== «Right»)
{
dc.DrawEllipse (Pens.Magenta, e. X, e. Y, 20,15);
dc.FillEllipse (Brushes.Blue, e. X, e. Y, 20,15);
}
}
Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠΉΡΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ.
ΠΠ°Π΄Π°Π½ΠΈΠ΅.
1). Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΠΎ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡΠΈ ΠΌΡΡΠΈ Π² ΠΌΠ΅ΡΡΠ΅ ΡΠ΅Π»ΡΠΊΠ° Π²ΡΠ²ΠΎΠ΄ΠΈΠ»ΠΎΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π½Π°ΠΆΠ°ΡΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΡΠΈ ΠΌΡΡΠΈ.
2). Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΈ ΡΠ΅Π»ΡΠΊΠ΅ Π½Π° ΠΏΡΠ°Π²ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΌΡΡΠΈ ΡΠΈΡΠΎΠ²Π°Π»Π°ΡΡ Π»ΠΈΠ½ΠΈΡ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡΠ°Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠ΅Π»ΡΠΊΠ° Ρ Π»Π΅Π²ΡΠΌ Π²Π΅ΡΡ Π½ΠΈΠΌ ΡΠ³Π»ΠΎΠΌ ΠΎΠΊΠ½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
3). Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΠ²ΠΎΠ΄ΠΈΠ»ΡΡ ΡΠ»Π΅Π΄ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΡΡΠΈ (ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π»ΠΈΠ½ΠΈΠΈ).
ΠΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠ° ΠΎΠΊΠ½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΡΠ»ΠΈ ΡΠ²Π΅ΡΠ½ΡΡΡ ΠΎΠΊΠ½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°, Π·Π°ΡΠ΅ΠΌ Π²Π½ΠΎΠ²Ρ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ Π΅Π³ΠΎ, ΡΠΎ ΠΌΡ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π·Π°ΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΠΈ ΠΎΠΊΠ½Π° ΠΈΡΡΠ΅Π·Π»ΠΎ. ΠΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π΅ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°. ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈ ΡΠ΅ΠΊΡΡΠ° Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΡΠ°ΠΌΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Π² Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΡΠ»ΡΡΠ°ΡΡ Π²ΡΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ (ΡΠΎΠ±ΡΡΠΈΠ΅ Paint), ΠΊΠΎΡΠΎΡΠΎΠ΅ «Π³ΠΎΠ²ΠΎΡΠΈΡ», ΡΡΠΎ ΠΎΠΊΠ½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΠΈ Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠ° ΠΎΠΊΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ ΠΏΠΎ ΡΠΎΠ±ΡΡΠΈΡ Paint. ΠΠ΅ΡΠΎΠ΄-ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΡΠΎΠ³ΠΎ ΡΠΎΠ±ΡΡΠΈΡ ΠΈΠΌΠ΅Π΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ:
private void Form_Paint (object sender, System.Windows.Forms.PaintEventArgs e)
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΎΠ½ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° e. ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ:
Graphics dc = e. Graphics;
Π ΡΠ΅Π»Π΅ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΎΠΊΠ½Π°.
ΠΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠ° ΠΎΠΊΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎ ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΈΠ²Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎ Π±ΡΠ²Π°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΈ Π²ΡΠ²ΠΎΠ΄Π΅ Π½Π° ΡΠΊΡΠ°Π½ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ. «ΠΠ°ΡΡΠ°Π²ΠΈΡΡ» ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π²ΡΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅ Paint ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΡΠ΅ΠΌ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠ΅ΡΠΎΠ΄Π° Invalidate (), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»Π΅Π½ΠΎΠΌ System.Windows.Forms.Form. Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΠΉ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°. ΠΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΎΠ±Π»Π°ΡΡΡ ΠΎΠΊΠ½Π° Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠΈ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Π½Π°ΠΌΠΈ Π²Π΅ΡΡΠΈΡ Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΡΠ²Π°Π΅Ρ Π²ΡΠ΅ ΠΎΠΊΠ½ΠΎ.
ΠΡΠΈΠΌΠ΅Ρ 2. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, ΡΠΈΡΠΈΠ½Π° ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠ°ΠΆΠ΄ΡΠ΅ 150ΠΌΡ Π½Π° 5 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ.
1. ΠΠ±ΡΡΠ²ΠΈΠΌ Π² ΠΊΠ»Π°ΡΡΠ΅ Form1 ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ:
private int xWidth;
2. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΌΠ΅ΡΠΎΠ΄-ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΡ Paint, Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π² ΡΠ²ΠΎΠΉΡΡΠ²Π°Ρ ΡΠΎΡΠΌΡ Π²ΡΠ±Π΅ΡΠ΅ΠΌ ΡΠΎΠ±ΡΡΠΈΠ΅ Paint ΠΈ ΡΠ΅Π»ΠΊΠ½Π΅ΠΌ ΠΏΠΎ Π½Π΅ΠΌΡ. ΠΠΎΡΠ»Π΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π»Π° ΠΌΠ΅ΡΠΎΠ΄Π°, ΠΌΠ΅ΡΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ Π²ΠΈΠ΄:
private void Form1_Paint (object sender, System.Windows.Forms.PaintEventArgs e)
{
Graphics dc = e. Graphics;
dc.DrawRectangle (Pens.RoyalBlue, 10,100,xWidth, 50);
}
3. ΠΠ΅ΡΠ΅Π½Π΅ΡΠ΅ΠΌ Π½Π° ΡΠΎΡΠΌΡ Timer ΠΈΠ· Toolbox, Π·Π°ΡΠ΅ΠΌ Π² ΡΠ²ΠΎΠΉΡΡΠ²Π°Ρ ΡΠ°ΠΉΠΌΠ΅ΡΠ° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Enable Π² true ΠΈ Interval Π² 150.
4. ΠΠ°Π»Π΅Π΅ Π΄Π²ΠΎΠΉΠ½ΡΠΌ ΡΠ΅Π»ΡΠΊΠΎΠΌ ΠΌΡΡΠΈ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄-ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠ°ΠΉΠΌΠ΅ΡΠ°. ΠΠΎΡΠ»Π΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π»Π° ΠΌΠ΅ΡΠΎΠ΄Π°, ΠΌΠ΅ΡΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ Π²ΠΈΠ΄:
private void timer1_Tick (object sender, System. EventArgs e)
{
xWidth += 5;
Invalidate ();
}
ΠΠ°Π΄Π°Π½ΠΈΡ:
1). Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ (ΡΡΡΠ΅ΠΊΡ Π½Π°Π΅Π·Π΄Π°).
2). Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΎΡΠΌΡ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π΄Π²Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ° ΡΠ°Π²Π½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ, Π·Π°ΡΠ΅ΠΌ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡ ΡΠ°Π·ΡΠ΅Π·ΠΆΠ°ΡΡΡΡ ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ ΡΠ³Π»Π°ΠΌ ΠΎΠΊΠ½Π° (ΠΏΠΎ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ).
Π). ΠΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ Π² ΡΠ΅Π±Ρ ΠΎΠ±Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°.
Π). ΠΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, ΡΠ²Π»ΡΡΡΠΈΠΉΡΡ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠ².