ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π“Ρ€Π°Ρ„ΠΈΠΊΠ° Π² Delphi

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‡ΠΊΠ°ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ воспроизвСсти ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π½Π° Ρ€ΠΈΡ. 4.8, сдСлайтС Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Ρ‰Π΅Π»Ρ‡ΠΎΠΊ Π½Π° Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Chart. Π’Ρ‹ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚Π΅ Π² ΠΎΠΊΠ½ΠΎ Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ (рис. 4.9) Π½Π° ΡΡ‚Ρ€Π°Π½ΠΈΡ†Ρƒ Chart, которая ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько Π·Π°ΠΊΠ»Π°Π΄ΠΎΠΊ. ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго вас Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π½Π΅ΠΉ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ° Series. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅ Add — Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΠ΅Ρ€ΠΈΡŽ. Π’Ρ‹ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚Π΅ Π² ΠΎΠΊΠ½ΠΎ (рис. 4.10), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π“Ρ€Π°Ρ„ΠΈΠΊΠ° Π² Delphi (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² отобраТСния графичСской ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

Для отобраТСния графичСской ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Delphi прСдусмотрСны ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, список ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Π°Π½ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 4.1.

Π’Π°Π±Π»ΠΈΡ†Π° 4.1 ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ отобраТСния графичСской ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠŸΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚

Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π°

ОписаниС

Image (ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅)

Additional

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для отобраТСния Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ: ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π±ΠΈΡ‚ΠΎΠ²Ρ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΠΈ ΠΌΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ»ΠΎΠ².

PaintBox (ΠΎΠΊΠ½ΠΎ для рисования)

System

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ области, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ.

DrawGrid (Ρ‚Π°Π±Π»ΠΈΡ†Π° рисунков)

Additional

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для отобраТСния Π² ΡΡ‚Ρ€ΠΎΠΊΠ°Ρ… ΠΈ ΡΡ‚ΠΎΠ»Π±Ρ†Π°Ρ… нСтСкстовых Π΄Π°Π½Π½Ρ‹Ρ….

Chart (Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ)

Additional

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ ΠΊ ΡΠ΅ΠΌΠ΅ΠΉΡΡ‚Π²Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² TChart, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для создания Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ².

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΈ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π½Π° ΠΏΠΎΠ²Π΅Ρ€Ρ…ности любого ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π½Π° ΠΊΠ°Π½Π²Π΅ Canvas.

Канва Canvas Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ, строго говоря, ΠΎΠ½Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ. Но ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, Π² Ρ‡Π°ΡΡ‚ности, Ρ„ΠΎΡ€ΠΌΡ‹, ΠΈΠΌΠ΅ΡŽΡ‚ ΠΊΠ°Π½Π²Ρƒ ΠΈ ΠΊΠ°Π½Π²Π° прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΡƒΡŽ Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎ ΠΊΠ°Π½Π²Π΅ всС-Ρ‚Π°ΠΊΠΈ цСлСсообразно Π΄Π°Ρ‚ΡŒ.

Канва прСдставляСт собой ΠΎΠ±Π»Π°ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ изобраТСния. Она содСрТит свойства ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, сущСствСнно ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ Delphi. ВсС слоТныС взаимодСйствия с ΡΠΈΡΡ‚Π΅ΠΌΠΎΠΉ спрятаны для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² Delphi ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ ΠΈΡΠΊΡƒΡˆΠ΅Π½Π½Ρ‹ΠΉ Π² ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅.

КаТдая Ρ‚ΠΎΡ‡ΠΊΠ° ΠΊΠ°Π½Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ X ΠΈ Y. БистСма ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΠΊΠ°Π½Π²Ρ‹, ΠΊΠ°ΠΊ ΠΈ Π²Π΅Π·Π΄Π΅ Π² Delphi, ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π»Π΅Π²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΡƒΠ³ΠΎΠ» ΠΊΠ°Π½Π²Ρ‹. ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° X возрастаСт ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ, Π° ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° Y — ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ свСрху Π²Π½ΠΈΠ·. ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΈΠ·ΠΌΠ΅Ρ€ΡΡŽΡ‚ΡΡ Π² ΠΏΠΈΠΊΡΠ΅Π»ΡΡ…. ПиксСль — это наимСньший элСмСнт повСрхности рисунка, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Π’Π°ΠΆΠ½Π΅ΠΉΡˆΠ΅Π΅ свойство пиксСля — Π΅Π³ΠΎ Ρ†Π²Π΅Ρ‚.

Канва ΠΈΠΌΠ΅Π΅Ρ‚ свойство Pixels. Π­Ρ‚ΠΎ свойство прСдставляСт собой Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° Ρ†Π²Π΅Ρ‚Π° ΠΊΠ°Π½Π²Ρ‹. НапримСр, Canvas. Pixels [10, 20] соотвСтствуСт Ρ†Π²Π΅Ρ‚Ρƒ пиксСля, 10-Π³ΠΎ слСва ΠΈ 20-Π³ΠΎ свСрху. Π‘ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ пиксСлСй ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ с Π»ΡŽΠ±Ρ‹ΠΌ свойством: ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ†Π²Π΅Ρ‚, задавая пиксСлю Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈΠ»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π΅Π³ΠΎ Ρ†Π²Π΅Ρ‚ ΠΏΠΎ Ρ…ранящСмуся Π² Π½Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ. НапримСр, Canvas. Pixels [10, 20]: = 0 ΠΈΠ»ΠΈ Canvas. Pixels [10, 20]: = clBlack — это Π·Π°Π΄Π°Π½ΠΈΠ΅ пиксСлю Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ Ρ†Π²Π΅Ρ‚Π°.

Бвойство Pixels ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для рисования Π½Π° ΠΊΠ°Π½Π²Π΅. Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ ΠΏΠΈΠΊΡΠ΅Π»ΡΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊ синусоиды Π½Π° ΠΊΠ°Π½Π²Π΅ Ρ„ΠΎΡ€ΠΌΡ‹. Для этого Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события Ρ„ΠΎΡ€ΠΌΡ‹ OnPaint (прорисовка) ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

procedure TForm1. FormPaint (Sender: TObject);

var

X, Y: real; // ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

PX, PY: longint; // ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ пиксСлСй

begin

Color: = clWhite;

for PX: = 0 to ClientWidth do

begin

{X - Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°,

ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ пиксСлю с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ΠΎΠΉ Π Π₯}

X: = PX*4*Pi/ClientWidth;

Y: =Sin (X);

{PY - ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° пиксСля,

ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅ Y}

PY: =trunc (ClientHeight — (Y+1) *ClientHeight/2);

{УстанавливаСтся Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ

пиксСля (О яркости) }

Canvas. Pixels [PX, PY]: = 0;

end;

end;

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ это тСстовоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, прСдставлСнный Π½Π° Ρ€ΠΈΡ. 4.1 Π°. Π“Ρ€Π°Ρ„ΠΈΠΊ синусоиды получился, хотя ΠΈ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ, Ρ‚.ΠΊ. разбиваСтся Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ — пиксСли.

Рис.4.1 Π“Ρ€Π°Ρ„ΠΈΠΊ синусоиды, построСнный ΠΏΠΎ ΠΏΠΈΠΊΡΠ΅Π»ΡΠΌ (Π°) ΠΈ Π»ΠΈΠ½ΠΈΡΠΌΠΈ (Π±)

Π°)

Π±)

Канва — ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса TCanvas ΠΈΠΌΠ΅Π΅Ρ‚ мноТСство ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, Π»ΠΈΠ½ΠΈΠΈ, Ρ„ΠΈΠ³ΡƒΡ€Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства Pen — ΠΏΠ΅Ρ€ΠΎ. Π­Ρ‚ΠΎ свойство являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ ряд свойств. Одно ΠΈΠ· Π½ΠΈΡ… ΡƒΠΆΠ΅ извСстноС Π²Π°ΠΌ свойство Color — Ρ†Π²Π΅Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ наносится рисунок. Π’Ρ‚ΠΎΡ€ΠΎΠ΅ свойство — Width (ΡˆΠΈΡ€ΠΈΠ½Π° Π»ΠΈΠ½ΠΈΠΈ). Π¨ΠΈΡ€ΠΈΠ½Π° задаСтся Π² ΠΏΠΈΠΊΡΠ΅Π»ΡΡ…. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡˆΠΈΡ€ΠΈΠ½Π° Ρ€Π°Π²Π½Π° 1.

Бвойство Style опрСдСляСт Π²ΠΈΠ΄ Π»ΠΈΠ½ΠΈΠΈ. Π­Ρ‚ΠΎ свойство ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния:

psSolid

Бплошная линия

psDash

Штриховая линия

psDot

ΠŸΡƒΠ½ΠΊΡ‚ΠΈΡ€Π½Π°Ρ линия

psDashDot

Π¨Ρ‚Ρ€ΠΈΡ…-пунктирная линия

psDashDotDot

Линия, Ρ‡Π΅Ρ€Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΡˆΡ‚Ρ€ΠΈΡ… ΠΈ Π΄Π²Π° ΠΏΡƒΠ½ΠΊΡ‚ΠΈΡ€Π°

psClear

ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΈ

psInsideFrame

Бплошная линия, Π½ΠΎ ΠΏΡ€ΠΈ Width > 1 Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‰Π°Ρ Ρ†Π²Π΅Ρ‚Π°, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΡ‚ ΠΏΠ°Π»ΠΈΡ‚Ρ€Ρ‹ Windows

Π£ ΠΊΠ°Π½Π²Ρ‹ имССтся свойство PenPos Ρ‚ΠΈΠΏΠ° TPoint (см.). Π­Ρ‚ΠΎ свойство опрСдСляСт Π² ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°Ρ… ΠΊΠ°Π½Π²Ρ‹ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΏΠ΅Ρ€Π°. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π° Π±Π΅Π· прорисовки Π»ΠΈΠ½ΠΈΠΈ, Ρ‚. Π΅. ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ PenPos, производится ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΊΠ°Π½Π²Ρ‹ MoveTo (X, Y). Π—Π΄Π΅ΡΡŒ (X, Y) — ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ‚ΠΎΡ‡ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ пСрСмСщаСтся ΠΏΠ΅Ρ€ΠΎ. Π­Ρ‚Π° тСкущая Ρ‚ΠΎΡ‡ΠΊΠ° становится исходной, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ LineTo (X, Y) ΠΌΠΎΠΆΠ½ΠΎ провСсти линию Π² Ρ‚ΠΎΡ‡ΠΊΡƒ с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ (X, Y). ΠŸΡ€ΠΈ этом тСкущая Ρ‚ΠΎΡ‡ΠΊΠ° пСрСмСщаСтся Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ Π»ΠΈΠ½ΠΈΠΈ ΠΈ Π½ΠΎΠ²Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² LineTo Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΈΠ· ΡΡ‚ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€ΠΎΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊ синуса ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события Ρ„ΠΎΡ€ΠΌΡ‹ OnPaint ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΈΠ΄:

procedure TForm1. FormPaint (Sender: TObject);

var

X, Y: real; // ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

PX, PY: longint; // ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ пиксСлСй

begin

Color: =clWhite;

Canvas. MoveTo (0,ClientHeight div 2);

for PX: =0 to ClientWidth do

begin

{X - Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°,

ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ пиксСлю с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ΠΎΠΉ Π Π₯}

X: = PX*4*Pi/ClientWidth;

Y: = Sin (X);

{PY - ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° пиксСля,

ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅ Y}

PY: = trunc (ClientHeight — (Y+1) *ClientHeight/2);

{ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡΡ линия Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅}

Canvas. LineTo (PX, PY);

end;

end;

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния Π² ΡΡ‚ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° Ρ€ΠΈΡ. 4.1 Π±. Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, качСство Π³Ρ€Π°Ρ„ΠΈΠΊΠ° сущСствСнно ΡƒΠ»ΡƒΡ‡ΡˆΠΈΠ»ΠΎΡΡŒ.

ΠŸΠ΅Ρ€ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ прямыС Π»ΠΈΠ½ΠΈΠΈ, Π½ΠΎ ΠΈ Ρ„ΠΈΠ³ΡƒΡ€Ρ‹. ΠŸΠΎΠ»Π½Ρ‹ΠΉ список ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΊΠ°Π½Π²Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ΅Ρ€ΠΎ, см. Π²ΠΎ встроСнной справкС Delphi. А ΠΏΠΎΠΊΠ° Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ… — Ellipse, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ рисуСт эллипс ΠΈΠ»ΠΈ ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΡŒ. Он ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ ΠΊΠ°ΠΊ

procedure Ellipse (X1, Y1, Π₯2, Y2: Integer);

Π³Π΄Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ X1, Π₯2, Y1, Y2 ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ эллипс ΠΈΠ»ΠΈ ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΡŒ. НапримСр, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

Canvas. Ellipse (10, 40, 20, 50);

нарисуСт ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΡŒ с Π΄ΠΈΠ°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ 10 ΠΈ Ρ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ Ρ†Π΅Π½Ρ‚Ρ€Π° (15, 45).

Π€ΠΈΠ³ΡƒΡ€Ρ‹ Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС Ρ€ΠΈΡΡƒΡŽΡ‚ΡΡ Π½Π΅ ΠΏΡƒΡΡ‚Ρ‹ΠΌΠΈ, Π° Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π½Ρ‹ΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства ΠΊΠ°Π½Π²Ρ‹ Brush — ΠΊΠΈΡΡ‚ΡŒ. Бвойство Brush являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ряд свойств. Бвойство Color опрСдСляСт Ρ†Π²Π΅Ρ‚ заполнСния. Бвойство Style опрСдСляСт шаблон заполнСния (ΡˆΡ‚Ρ€ΠΈΡ…ΠΎΠ²ΠΊΡƒ). По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Style Ρ€Π°Π²Π½ΠΎ bsSolid, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ сплошноС Π·Π°ΠΊΡ€Π°ΡˆΠΈΠ²Π°Π½ΠΈΠ΅ Ρ†Π²Π΅Ρ‚ΠΎΠΌ Color.

Π£ ΠΏΠ΅Ρ€Π° Pen имССтся Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ свойство, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ ΠΏΠΎΠΊΠ° Π½Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π»ΠΈ. Π­Ρ‚ΠΎ свойство — Mode (Ρ€Π΅ΠΆΠΈΠΌ). По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Mode = pmCopy. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π»ΠΈΠ½ΠΈΠΈ проводятся Ρ†Π²Π΅Ρ‚ΠΎΠΌ, Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ Π² ΡΠ²ΠΎΠΉΡΡ‚Π²Π΅ Color. Но Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π΅ΠΆΠΈΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… учитываСтся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†Π²Π΅Ρ‚ Color, Π½ΠΎ ΠΈ Ρ†Π²Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… пиксСлСй Ρ„ΠΎΠ½Π°. НаиболСС интСрСсным ΠΈΠ· ΡΡ‚ΠΈΡ… Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² являСтся Ρ€Π΅ΠΆΠΈΠΌ pmNotXor — слоТСниС с Ρ„ΠΎΠ½ΠΎΠΌ ΠΏΠΎ ΠΈΠ½Π²Π΅Ρ€ΡΠ½ΠΎΠΌΡƒ ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅ΠΌΡƒ Π˜Π›Π˜. Если Π·Π°Π΄Π°Π½ этот Ρ€Π΅ΠΆΠΈΠΌ, Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ рисованиС Ρ‚ΠΎΠΉ ΠΆΠ΅ Ρ„ΠΈΠ³ΡƒΡ€Ρ‹ Π½Π° Ρ‚ΠΎΠΌ ΠΆΠ΅ мСстС ΠΊΠ°Π½Π²Ρ‹ ΡƒΠ±ΠΈΡ€Π°Π΅Ρ‚ Ρ€Π°Π½Π΅Π΅ нарисованноС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΠΎΡΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ‚ Ρ†Π²Π΅Ρ‚Π° пиксСлСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ Π΄ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ изобраТСния Ρ„ΠΈΠ³ΡƒΡ€Ρ‹.

Π­Ρ‚Ρƒ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌΠ° pmNotXor ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для создания ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Достаточно Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅Ρ‡Ρ‚ΠΎ, Π·Π°Ρ‚Π΅ΠΌ ΡΡ‚Π΅Ρ€Π΅Ρ‚ΡŒ нарисованноС, ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΌ — ΠΈ Ρ€ΠΈΡΡƒΠ½ΠΎΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒΡΡ оТившим.

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ сами ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΡƒΡŽ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡŽ — Π΄Π²ΠΈΠΆΡƒΡ‰ΡƒΡŽΡΡ ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΡŒ. НачнитС Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π² Ρ€Π°Π·Π΄Π΅Π» implementation Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ объявлСниС

var X, Y: integer;

Π’Π΅ΠΌ самым Π²Ρ‹ Π²Π²Π΅Π΄Π΅Ρ‚Π΅ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ X ΠΈ Y — Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ изобраТСния.

Π’ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ OnPaint Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

Canvas. Brush. Color: = clWhite;

Color: = clWhite;

Canvas. Pen. Mode: = pmNotXor;

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ· ΡΡ‚ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Π·Π°Π΄Π°Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ кисти Brush. Π—Π½Π°Ρ‡ΠΈΡ‚ ваша ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ Π±Π΅Π»Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ. Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π·Π°Π΄Π°Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° повСрхности Ρ„ΠΎΡ€ΠΌΡ‹.

Π’Ρ€Π΅Ρ‚ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ устанавливаСт Ρ€Π΅ΠΆΠΈΠΌ ΠΏΠ΅Ρ€Π° pmNotXor, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ ΡΡ‚ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΡ€Π΅ΠΆΠ½Π΅Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€Π΅ΠΆΠ΄Π΅, Ρ‡Π΅ΠΌ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅.

Π”Π°ΠΆΠ΅ самая простая ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ нуТдаСтся Π² ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π˜Π½Π°Ρ‡Π΅ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ двиТСния Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒΡΡ быстродСйствиСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ пСрСнСситС Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Timer — Ρ‚Π°ΠΉΠΌΠ΅Ρ€ со ΡΡ‚Ρ€Π°Π½ΠΈΡ†Ρ‹ System. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ описан Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ 5.7.

ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‚Π°ΠΌ Π΅Π³ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС. А ΠΏΠΎΠΊΠ° Π·Π°Π΄Π°ΠΉΡ‚Π΅ Π΅Π³ΠΎ свойство Interval Ρ€Π°Π²Π½Ρ‹ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 30 (это врСмя Π²Ρ‹Π΄Π΅Ρ€ΠΆΠΊΠΈ Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡƒΠ½Π΄Π°Ρ…, Π½ΠΎ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅ врСмя Π²Ρ‹Π΄Π΅Ρ€ΠΆΠΊΠΈ Π±ΡƒΠ΄Π΅Ρ‚ большС — см. Ρ€Π°Π·Π΄Π΅Π» 5.7) ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ свойство Enabled Ρ€Π°Π²Π½Ρ‹ΠΌ false (это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ автоматичСски Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ запуска прилоТСния).

Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события этого ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° OnTimer Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

// Π‘Ρ‚ΠΈΡ€Π°Π½ΠΈΠ΅ ΠΏΡ€Π΅ΠΆΠ½Π΅Π³ΠΎ изобраТСния

Canvas. Ellipse (Π₯-5, Y, X+5, Y-1Q);

Inc (X);

// РисованиС Π½ΠΎΠ²ΠΎΠ³ΠΎ изобраТСния

Canvas. Ellipse (Π₯-5, Y, X+5, Y-10);

// ΠžΡΡ‚Π°Π½ΠΎΠ² ΠΏΡ€ΠΈ достиТСнии ΠΊΠΎΠ½Ρ†Π° Ρ„ΠΎΡ€ΠΌΡ‹

if (X >= ClientWidth-20) then

Timer1. Enabled: = false;

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ· ΡΡ‚ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² рисуСт ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ мСстС, Π³Π΄Π΅ ΠΎΠ½Π° Π±Ρ‹Π»Π° нарисована Ρ€Π°Π½Π΅Π΅, Ρ‚. Π΅. стираСт ΠΏΡ€Π΅ΠΆΠ½Π΅Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

Π”Π°Π»Π΅Π΅ увСличиваСтся Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Inc тСкущая ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° X ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ окруТности рисуСтся Π² Π½ΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ.

ПослСдний ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ останавливаСт ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρƒ ΠΊΡ€Π°Ρ Ρ„ΠΎΡ€ΠΌΡ‹.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ пСрСнСситС Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Button ΠΈ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ‰Π΅Π»Ρ‡ΠΊΠ° Π½Π° Π½Π΅ΠΉ помСститС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π₯: =10;

Y: =100;

Canvas. Ellipse (X-5, Y, X+5, Y-10);

Timer1. Enabled: =true;

ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π·Π°Π΄Π°ΡŽΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ окруТности. Π’Ρ€Π΅Ρ‚ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ рисуСт ΠΎΠΊΡ€ΡƒΠΆΠ½ΠΎΡΡ‚ΡŒ Π² Π΅Π΅ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, Π° Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚Ρ‹ΠΉ — запускаСт Ρ‚Π°ΠΉΠΌΠ΅Ρ€.

ΠžΡ‚Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, запуститС Π΅Π³ΠΎ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅. Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ окруТности, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡŽΡ‰Π΅Π΅ΡΡ ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ΅ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ. А Π΄Π°Π»ΡŒΡˆΠ΅ ΡƒΠΆ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π²Π°ΡˆΡƒ Ρ„Π°Π½Ρ‚Π°Π·ΠΈΡŽ ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠΉΡ‚Π΅ это Π½Π΅ ΡΠ»ΠΈΡˆΠΊΠΎΠΌ интСрСсноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΎ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅.

На ΠΊΠ°Π½Π²Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ создаваСмыС изобраТСния, Π½ΠΎ ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡ, хранящиСся Π² Π³Ρ€Π°Ρ„ичСских Ρ„Π°ΠΉΠ»Π°Ρ…. Волько сама ΠΊΠ°Π½Π²Π° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ изобраТСния ΠΈΠ· Ρ„Π°ΠΉΠ»Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π½Π°Π΄ΠΎ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ графичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, способный Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ графичСских Ρ„Π°ΠΉΠ»ΠΎΠ². А Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΡΡ‚ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π° ΠΊΠ°Π½Π²Ρƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΊΠ°Π½Π²Ρ‹ Draw. Π•Π³ΠΎ описаниС:

procedure Draw (X, Y: Integer; Graphic: TGraphic);

Π—Π΄Π΅ΡΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π₯ ΠΈ Y ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ ΡƒΠ³Π»Π° размСщСния изобраТСния Π½Π° ΠΊΠ°Π½Π²Π΅, a Graphic — ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, хранящий ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° TBitMap, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для хранСния Π±ΠΈΡ‚ΠΎΠ²Ρ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ всС это выглядит Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.

ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, пСрСнСситС Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ OpenPictureDialog со ΡΡ‚Ρ€Π°Π½ΠΈΡ†Ρ‹ Dialogs (это ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³Π° открытия графичСских Ρ„Π°ΠΉΠ»ΠΎΠ² — см. Ρ€Π°Π·Π΄Π΅Π» 8.2) ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ Button. РазмСститС OpenPictureDialog Π² Π»ΡŽΠ±ΠΎΠΌ мСстС Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ этот ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π½Π΅Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ, Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ размСститС Π²Π½ΠΈΠ·Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹. Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ‰Π΅Π»Ρ‡ΠΊΠ° Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅ занСситС ΠΊΠΎΠ΄:

procedure TForm1. Button1Click (Sender: TObject);

var

BitMap: TBitMap;

begin

// Π’Ρ‹Π±ΠΎΡ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ графичСского Ρ„Π°ΠΉΠ»Π°

if OpenPictureDialog1. Execute then

begin

// Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° BitMap Ρ‚ΠΈΠΏΠ° TBitMap

BitMap: =TBitMap. Create;

// Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π² BitMap Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ графичСского Ρ„Π°ΠΉΠ»Π°

BitMap. LoadFromFile (OpenPictureDialog1. FileName);

// ΠŸΠ΅Ρ€Π΅Π½ΠΎΡ изобраТСния Π½Π° ΠΊΠ°Π½Π²Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹

Canvas. Draw (10, 10, BitMap);

// Π£Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° BitMap

BitMap. Free;

end;

end;

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ создаСт Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° TBitMap с ΠΈΠΌΠ΅Π½Π΅ΠΌ BitMap. Π—Π°Ρ‚Π΅ΠΌ вызываСтся Π΄ΠΈΠ°Π»ΠΎΠ³ открытия графичСского Ρ„Π°ΠΉΠ»Π° OpenPictureDialog1 ΠΈ, Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Ρ‹Π±Ρ€Π°Π» Ρ„Π°ΠΉΠ», Ρ‚ΠΎ ΠΎΠ½ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ся Π² BitMap ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ LoadFromFile. Π—Π°Ρ‚Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Draw Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ копируСтся Π½Π° ΠΊΠ°Π½Π²Ρƒ Π² ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ ΡƒΠ³Π»Π° (10,10). ПослС этого Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ BitMap уничтоТаСтся.

ЗапуститС вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π½Π° Π΅Π³ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅. Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ любой графичСский Ρ„Π°ΠΉΠ» Ρ‚ΠΈΠΏΠ°. bmp ΠΈ ΠΎΠ½ ΠΎΡ‚образится Π½Π° ΠΊΠ°Π½Π²Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ (см. Ρ€ΠΈΡ. 4.2 Π°). ГрафичСскиС Ρ„Π°ΠΉΠ»Ρ‹ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Images. Π’ Delphi 5 ΠΈ 4 ΠΎΠ½ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ располоТСн Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. program filesCommon FilesBorland Shared. Π’ Delphi 3 ΠΎΠ½ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. program filesBorlandDelphi 3, Π° Π² Delphi 1 — Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Delphi 16. Π’ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Images имССтся, Π² Ρ‡Π°ΡΡ‚ности, ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ImagesSplash16Color, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ хранится Ρ„Π°ΠΉΠ», Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΉ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ рис. 4.2

Рис. 4.2

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ°Π½Π²Π΅ графичСского Ρ„Π°ΠΉΠ»Π° (Π°) ΠΈ Π΅Π³ΠΎ стираниС (Π±) ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠΊΠ½ΠΎΠΌ

Π°)

Π±)

Π’Ρ‹ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для просмотра графичСских Ρ„Π°ΠΉΠ»ΠΎΠ². Но Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΉ нСдостаток. НС Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ своСго прилоТСния, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΊΠ°ΠΊΡƒΡŽ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Π΅Ρ€Π½ΠΈΡ‚Π΅ΡΡŒ Π² Delphi. Π—Π°Ρ‚Π΅ΠΌ, Π½ΠΈΡ‡Π΅Π³ΠΎ Ρ‚Π°ΠΌ Π½Π΅ Π΄Π΅Π»Π°Ρ, ΠΎΠΏΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΡΠ²ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅Π΅ΡΡ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Если ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ ΡƒΡ…ΠΎΠ΄ΠΈΠ»ΠΈ, Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π»ΠΎ ΠΎΠΊΠ½ΠΎ вашСго прилоТСния, Ρ‚ΠΎ Π²Π΅Ρ€Π½ΡƒΠ²ΡˆΠΈΡΡŒ Π² Π½Π΅Π³ΠΎ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π² ΠΎΠΊΠ½Π΅ исчСзла. Если ΠΆΠ΅ ΠΎΠΊΠ½ΠΎ вашСго прилоТСния ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°Π»ΠΎΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ частично, Ρ‚ΠΎ Π²Π΅Ρ€Π½ΡƒΠ²ΡˆΠΈΡΡŒ Π² ΡΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ прСдставлСнному Π½Π° Ρ€ΠΈΡ. 4.2 Π±.

Π’Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ссли ΠΎΠΊΠ½ΠΎ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ прилоТСния ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π²Ρ€Π΅ΠΌΡ ΠΎΠΊΠ½ΠΎ вашСго прилоТСния, Ρ‚ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, нарисованноС Π½Π° ΠΊΠ°Π½Π²Π΅ Ρ„ΠΎΡ€ΠΌΡ‹, портится. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ этот нСдостаток.

Если ΠΎΠΊΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Ρ‚ΠΎ ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΡ€Ρ‚ΠΈΠ»ΠΎΡΡŒ, опСрационная систСма сообщаСт ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ, Ρ‡Ρ‚ΠΎ Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ измСнилось ΠΈ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ трСбуСтся ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΠΊΠ½Π°, для Π½Π΅Π³ΠΎ гСнСрируСтся событиС OnPaint. Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ этого события (Π² Π½Π°ΡˆΠ΅ΠΌ случаС события Ρ„ΠΎΡ€ΠΌΡ‹) Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

ΠŸΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ способами Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π’ Π½Π°ΡˆΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ вынСсти объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ BitMap (ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ var BitMap: TBitMap) Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, Ρ‚. Π΅. ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ эту ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ глобальной, размСстив нСпосрСдствСнно Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ implementation. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ BitMap. Free ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ пСрСнСсти Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события Ρ„ΠΎΡ€ΠΌΡ‹ OnDestroy, происходящСго Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ закрытия прилоТСния. Π’ΠΎΠ³Π΄Π° Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ всСго Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния вашСго прилоТСния Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΠΌΠ΅Ρ‚ΡŒ копию ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ BitMap ΠΈ Π²Π°ΠΌ достаточно ввСсти Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события OnPaint Ρ„ΠΎΡ€ΠΌΡ‹ всСго ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€:

Canvas. Draw (10, 10, BitMap);

Π‘Π΄Π΅Π»Π°ΠΉΡ‚Π΅ это, ΠΈ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π΅ ΠΏΠΎΡ€Ρ‚ится ΠΏΡ€ΠΈ Π»ΡŽΠ±Ρ‹Ρ… пСрСкрытиях ΠΎΠΊΠΎΠ½.

Помимо рассмотрСнного ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Draw ΠΊΠ°Π½Π²Π° ΠΈΠΌΠ΅Π΅Ρ‚ Π΅Ρ‰Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ копирования CopyRect:

procedure CopyRect (Dest: TRect; Canvas: TCanvas; Source: TRect);

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ Source ΠΎΠ±Π»Π°ΡΡ‚ΡŒ изобраТСния Π² ΠΊΠ°Π½Π²Π΅ источника изобраТСния Canvas Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ Dest ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ°Π½Π²Ρ‹. Π’ΠΈΠΏ TRect, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹Π΅ области Source ΠΈ Dest, ΡƒΠΆΠ΅ описывался Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ 3.2.

НапримСр, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

Canvas. CopyRect (MyRect2, Bitmap. Canvas, MyRect1);

ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° ΠΊΠ°Π½Π²Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹ Π² ΠΎΠ±Π»Π°ΡΡ‚ΡŒ MyRect2 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΎΠ±Π»Π°ΡΡ‚ΠΈ MyRect1 ΠΊΠ°Π½Π²Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Bitmap.

ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ CopyRect производится Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅, установлСнном свойством CopyMode. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ это свойство ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ cmSrcCopy, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ просто Π·Π°ΠΌΠ΅Π½Ρƒ изобраТСния, содСрТащСгося Ρ€Π°Π½Π΅Π΅ Π² ΠΎΠ±Π»Π°ΡΡ‚ΠΈ Dest, Π½Π° ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π”Ρ€ΡƒΠ³ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния CopyMode ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ изобраТСния, Π½ΠΎ ΠΈΡ… Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΠ΅ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° Ρ€Π°ΠΌΠΊΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ.

Π­Ρ‚ΠΈΠΌΠΈ основными свСдСниями ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π΅ графичСской ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° ΠΊΠ°Π½Π²Ρƒ ΠΌΡ‹ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠΌΡΡ. Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ 3.2 Π±Ρ‹Π»ΠΈ сообщСны свСдСния ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π΅ Π½Π° ΠΊΠ°Π½Π²Ρƒ тСкста. Π’ Ρ†Π΅Π»ΠΎΠΌ ΠΆΠ΅ ΠΊΠ°Π½Π²Π° — слоТный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΠΉ Π΅Ρ‰Π΅ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ свойствами ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ. Но ΡΡ‚ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΠΎΠ³ΠΎ обсуТдСния, выходящСго Π·Π° Ρ€Π°ΠΌΠΊΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠ½ΠΈΠ³Π΅ сСрии «Π’ΡΠ΅ ΠΎ Delphi» эти вопросы Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

Оконного ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ свойство Canvas — ΠΊΠ°Π½Π²Π°.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Image ΠΈ PaintBox

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Image ΠΈ PaintBox ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ с ΠΊΠ°Π½Π²ΠΎΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π½ΠΎΡΠΈΡ‚ΡŒ изобраТСния, ΠΊΠ°ΠΊ это описано Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ 4.2. ΠŸΡ€ΠΈ этом ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ PaintBox, собствСнно говоря, Π½Π΅ Π΄Π°Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ€ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π½Π° ΠΊΠ°Π½Π²Π΅ Ρ„ΠΎΡ€ΠΌΡ‹. РисованиС Π½Π° PaintBox вмСсто Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… прСимущСств, ΠΊΡ€ΠΎΠΌΠ΅, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ облСгчСния Π² Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… рисунков Π² ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΈ ΠΎΠΊΠ½Π°.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Image ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ³Π°Ρ‡Π΅ ΠΏΠΎ ΡΠ²ΠΎΠΈΠΌ возмоТностям ΠΈ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅, Ρ‡Π΅ΠΌ PaintBox. Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ использовании описанных Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ 4.2 ΠΏΡ€ΠΈΠ΅ΠΌΠΎΠ² рисования Π½Π° ΠΊΠ°Π½Π²Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Image ΠΈΠΌΠ΅Π΅Ρ‚ сущСствСнноС прСимущСство: Π² Π½Π΅ΠΌ Π½Π΅ ΠΏΡ€ΠΈΡ…одится Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²ΠΊΠ΅ изобраТСния, испорчСнного ΠΈΠ·-Π·Π° пСрСкрытия Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ. ВсС, связанноС с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ событий OnPaint, рассмотрСнных Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ 4.2, Π² Image осущСствляСтся автоматичСски. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Image ΠΏΡ€ΠΎΡ‰Π΅, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ нСпосрСдствСнном рисовании Π½Π° ΠΊΠ°Π½Π²Π΅ Ρ„ΠΎΡ€ΠΌΡ‹, Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ Π² ΠΎΠΊΠ½Π΅ прилоТСния нСсколько ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠΌΠΈ. ΠŸΡ€ΠΈ этом ΠΎΡ‚ΠΏΠ°Π΄Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ слоТных ΠΈ Π½ΡƒΠ΄Π½Ρ‹Ρ… расчСтов ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ ΠΊΠ°Π½Π²Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ΅ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠ΅ располоТСниС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Ρ‚. Π΅. Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ ΠΏΡ€ΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ прСимущСства Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ, вСроятно, Π²ΠΎ Π²ΡΠ΅Ρ… случаях Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΊΠ°Π½Π²ΠΎΠΉ Image, Ρ‡Π΅ΠΌ с ΠΊΠ°Π½Π²ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹.

Но ΠΏΠΎΠΌΠΈΠΌΠΎ этих возмоТностСй Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Image ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ свойства, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ графичСских Ρ„Π°ΠΉΠ»ΠΎΠ².

Delphi ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° Ρ„Π°ΠΉΠ»ΠΎΠ² — Π±ΠΈΡ‚ΠΎΠ²Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΌΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ»Ρ‹. ВсС Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° Ρ„Π°ΠΉΠ»ΠΎΠ² хранят изобраТСния; Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ лишь Π² ΡΠΏΠΎΡΠΎΠ±Π΅ ΠΈΡ… Ρ…ранСния Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Π² ΡΡ€Π΅Π΄ΡΡ‚Π²Π°Ρ… доступа ΠΊ Π½ΠΈΠΌ. Битовая ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° (Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ. bmp) ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ†Π²Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ пиксСля Π² ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ. ΠŸΡ€ΠΈ этом информация хранится Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ любой ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅ΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈ ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠ², ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

ΠŸΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ. ico) — это малСнькиС Π±ΠΈΡ‚ΠΎΠ²Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Они повсСмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для обозначСния Π·Π½Π°Ρ‡ΠΊΠΎΠ² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π² Π±Ρ‹ΡΡ‚Ρ€Ρ‹Ρ… ΠΊΠ½ΠΎΠΏΠΊΠ°Ρ…, Π² ΠΏΡƒΠ½ΠΊΡ‚Π°Ρ… мСню, Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… списках. Бпособ хранСния ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… схоТ с Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Π±ΠΈΡ‚ΠΎΠ²Ρ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°Ρ…, Π½ΠΎ ΠΈΠΌΠ΅ΡŽΡ‚ся ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΡ. Π’ Ρ‡Π°ΡΡ‚ности, ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΎΠ½Π° сохраняСт Ρ‚ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±Ρ‹Π»Π° создана.

ΠœΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ»Ρ‹ (Metafiles) хранят Π½Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±ΠΈΡ‚ΠΎΠ², ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… состоит ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΡΠΏΠΎΡΠΎΠ±Π΅ создания ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ. Они хранят ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ рисования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½Ρ‹ ΠΏΡ€ΠΈ воссоздании изобраТСния. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹ΠΌΠΈ, Ρ‡Π΅ΠΌ Π±ΠΈΡ‚ΠΎΠ²Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Image позволяСт ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽΡΡ Π² Π³Ρ€Π°Ρ„ичСских Ρ„Π°ΠΉΠ»Π°Ρ… всСх ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ². Для этого слуТит Π΅Π³ΠΎ свойство Picture — ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° TPicture.

Рис.4.3 Окно Picture Editor

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΡΡ‚ΠΈΠΌ свойством ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅Ρ€Π΅Π½Π΅ΡΠΈΡ‚Π΅ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Image. РастянитС Π΅Π³ΠΎ ΠΈΠ»ΠΈ Π·Π°Π΄Π°ΠΉΡ‚Π΅ Π΅Π³ΠΎ свойство Align Ρ€Π°Π²Π½Ρ‹ΠΌ alClient, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π·Π°Π½ΡΠ» всю ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹. НаТмитС Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ с ΠΌΠ½ΠΎΠ³ΠΎΡ‚ΠΎΡ‡ΠΈΠ΅ΠΌ ΠΎΠΊΠΎΠ»ΠΎ свойства Picture Π² ΠΎΠΊΠ½Π΅ Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€Π° ΠžΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΠ»ΠΈ просто сдСлайтС Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Ρ‰Π΅Π»Ρ‡ΠΎΠΊ Π½Π° Image. ΠŸΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ откроСтся ΠΎΠΊΠ½ΠΎ Picture Editor (рис. 4.3), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎ Picture ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ графичСский Ρ„Π°ΠΉΠ» (ΠΊΠ½ΠΎΠΏΠΊΠ° Load), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΏΠΎΠ΄ Π½ΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈΠ»ΠΈ Π² Π½ΠΎΠ²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π½Π° Load, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ графичСский Ρ„Π°ΠΉΠ». ΠŸΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ откроСтся ΠΎΠΊΠ½ΠΎ открытия графичСского Ρ„Π°ΠΉΠ»Π°, прСдставлСнноС Π½Π° Ρ€ΠΈΡ. 4.4 По ΠΌΠ΅Ρ€Π΅ пСрСмСщСния курсора Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΠΎ Π³Ρ€Π°Ρ„ичСским Ρ„Π°ΠΉΠ»Π°ΠΌ Π² ΠΏΡ€Π°Π²ΠΎΠΌ ΠΎΠΊΠ½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ содСрТащиСся Π² Π½ΠΈΡ… ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, Π° Π½Π°Π΄ Π½ΠΈΠΌΠΈ — Ρ†ΠΈΡ„Ρ€Ρ‹, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ Π²Π°ΠΌ графичСский Ρ„Π°ΠΉΠ» любого Ρ‚ΠΈΠΏΠ°. Напомним, Ρ‡Ρ‚ΠΎ поставляСмыС с Delphi графичСскиС Ρ„Π°ΠΉΠ»Ρ‹ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Images. Π’ Delphi 5 ΠΈ 4 ΠΎΠ½ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ располоТСн Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. program filesCommon FilesBorland Shared. Π’ Delphi 3 ΠΎΠ½ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. program filesBorlandDelphi 3, Π° Π² Delphi 1 — Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Delphi 16. ПослС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»Π° Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π½Π° OK Π² ΠΎΠΊΠ½Π΅ Picture Editor ΠΈ Π² Π²Π°ΡˆΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image отобразится выбранная Π²Π°ΠΌΠΈ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ»ΡŽΠ±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΅ΡŽ. Π’ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, Π²Ρ‹ ΠΈ Ρ‚Π°ΠΊ Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, Π΄Π°ΠΆΠ΅ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Рис.4.4 Окно Π΄ΠΈΠ°Π»ΠΎΠ³Π° открытия графичСского Ρ„Π°ΠΉΠ»Π°

Когда Π²Ρ‹ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ проСктирования Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ»ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Image, ΠΎΠ½ Π½Π΅ ΠΏΡ€ΠΎΡΡ‚ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π΅Π³ΠΎ, Π½ΠΎ ΠΈ ΡΠΎΡ…раняСт Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. Π­Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ графичСского Ρ„Π°ΠΉΠ»Π°. Π’ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ ΠΏΠΎΠ·Π΄Π½Π΅Π΅, Π² Image ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ Π²Π½Π΅ΡˆΠ½ΠΈΠ΅ графичСскиС Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ выполнСния прилоТСния.

ВСрнСмся ΠΊ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ свойств ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Image.

Если ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ свойство AutoSize Π² true, Ρ‚ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Image Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски ΠΏΠΎΠ΄Π³ΠΎΠ½ΡΡ‚ΡŒΡΡ ΠΏΠΎΠ΄ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½Π½ΠΎΠΉ Π² Π½Π΅Π³ΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ. Если ΠΆΠ΅ свойство AutoSize установлСно Π² false, Ρ‚ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈΠ»ΠΈ, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΠΏΠ»ΠΎΡ‰Π°Π΄ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΌΠ½ΠΎΠ³ΠΎ большС ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΈ изобраТСния.

Π”Ρ€ΡƒΠ³ΠΎΠ΅ свойство — Stretch позволяСт ΠΏΠΎΠ΄Π³ΠΎΠ½ΡΡ‚ΡŒ Π½Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΏΠΎΠ΄ Ρ€Π°Π·ΠΌΠ΅Ρ€ рисунка, Π° Ρ€ΠΈΡΡƒΠ½ΠΎΠΊ ΠΏΠΎΠ΄ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°. УстановитС AutoSize Π² false, растянитС ΠΈΠ»ΠΈ соТмитС Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Image ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ Stretch Π² true. Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ рисунок Π·Π°ΠΉΠΌΠ΅Ρ‚ всю ΠΏΠ»ΠΎΡ‰Π°Π΄ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ вряд Π»ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Image Ρ‚ΠΎΡ‡Π½ΠΎ ΠΏΡ€ΠΎΠΏΠΎΡ€Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ рисунка, Ρ‚ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ исказится. Π£ΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Stretch Π² true ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ смысл Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ ΡƒΠ·ΠΎΡ€ΠΎΠ², Π½ΠΎ Π½Π΅ Π΄Π»Ρ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ. Бвойство Stretch Π½Π΅ Π΄Π΅ΠΉΡΡ‚Π²ΡƒΠ΅Ρ‚ Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡ ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ своих Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ².

Бвойство — Center, установлСнноС Π² true, Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΈ Image, Ссли Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° большС Ρ€Π°Π·ΠΌΠ΅Ρ€Π° рисунка.

Рассмотрим Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ свойство — Transparent (ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ). Если Transparent Ρ€Π°Π²Π½ΠΎ true, Ρ‚ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Image становится ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΌ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для налоТСния ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Image ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Π² Π½Π΅Π³ΠΎ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ. Волько ΠΏΠΎΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ Π²Π·ΡΡ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΌΠ°Π»ΠΎ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΡƒΡŽ, ΠΊΠΎΠ½Ρ‚ΡƒΡ€Π½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ. ΠœΠΎΠΆΠ΅Ρ‚Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Π·ΡΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΈΠ· Ρ‡ΠΈΡΠ»Π° ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅ΠΌΡ‹Ρ… ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, стрСлку (Ρ„Π°ΠΉΠ». program filescommon filesborland sharedimagesbuttonsarrow1l. bmp). ΠŸΠ΅Ρ€Π΅Π΄Π²ΠΈΠ½ΡŒΡ‚Π΅ ваши Image Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°Π»ΠΈ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°, ΠΈ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ установитС Transparent Ρ€Π°Π²Π½Ρ‹ΠΌ true. Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ вСрхняя ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° пСрСстала Π·Π°ΡΠ»ΠΎΠ½ΡΡ‚ΡŒ ниТнюю. Одно ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΉ этого свойства — Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ надписСй, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΡ‚ΠΎΠ²ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. Π­Ρ‚ΠΈ надписи ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнной Π² Delphi ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Image Editor.

Π£Ρ‡Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ свойство Transparent дСйствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π±ΠΈΡ‚ΠΎΠ²Ρ‹Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹. ΠŸΡ€ΠΈ этом ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΌ (Ρ‚.Π΅. замСняСмым Π½Π° Ρ†Π²Π΅Ρ‚ располоТСнного ΠΏΠΎΠ΄ Π½ΠΈΠΌ изобраТСния) дСлаСтся ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ†Π²Π΅Ρ‚ Π»Π΅Π²ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ пиксСля Π±ΠΈΡ‚ΠΎΠ²ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

ΠœΡ‹ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π»ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ изобраТСния ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ проСктирования. Но ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎ Picture позволяСт Ρ‚Π°ΠΊΠΆΠ΅ Π»Π΅Π³ΠΊΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½ с Π³Ρ€Π°Ρ„ичСскими Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π»ΡŽΠ±Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ выполнСния прилоТСния. Π§Ρ‚ΠΎΠ± ΠΏΠΎΡΡΠ½ΠΈΡ‚ΡŒ Ρ‚Π΅Ρ…Π½ΠΈΠΊΡƒ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΎΠ±ΠΌΠ΅Π½Π°, Π½Π°Π΄ΠΎ сначала ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ свойство Picture.

Π­Ρ‚ΠΎ свойство являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ подсвойства, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ Π½Π° Ρ…ранящийся графичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Если Π² Picture хранится битовая ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°, Π½Π° Π½Π΅Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ свойство Picture. Bitmap. Если хранится ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, Π½Π° Π½Π΅Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ свойство Picture. Icon. На Ρ…ранящийся ΠΌΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ» ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ свойство Picture. Metafile. НаконСц, Π½Π° Π³Ρ€Π°Ρ„ичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ свойство Picture. Graphic.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Picture ΠΈ Π΅Π³ΠΎ свойства Bitmap, Icon, Metafile ΠΈ Graphic ΠΈΠΌΠ΅ΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ чтСния ΠΈ Π·Π°ΠΏΠΈΡΠΈ LoadFromFile ΠΈ SaveToFile:

procedure LoadFromFile (const FileName: string);

procedure SaveToFile (const FileName: string);

Для свойств Picture. Bitmap, Picture. Icon ΠΈ Picture. Metafile Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ классу ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°: Π±ΠΈΡ‚ΠΎΠ²ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅, ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, ΠΌΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ»Ρƒ. ΠŸΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° Π² ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎ Picture. Graphiс Ρ„Π°ΠΉΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΌΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ»Π°. А Π΄Π»Ρ самого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Picture ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ чтСния ΠΈ Π·Π°ΠΏΠΈΡΠΈ автоматичСски ΠΏΠΎΠ΄ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ Ρ‚ΠΈΠΏ Ρ„Π°ΠΉΠ»Π°. Поясним это Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅.

Π”Π°Π²Π°ΠΉΡ‚Π΅ построим ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎΠ΅ рассмотрСнному Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ 4.2 ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ просмотра графичСских Ρ„Π°ΠΉΠ»ΠΎΠ². Для разнообразия ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠΌ Π½Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ Button, Π° ΠΌΠ΅Π½ΡŽ. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Image. РастянитС Π΅Π³ΠΎ ΠΈΠ»ΠΈ Π·Π°Π΄Π°ΠΉΡ‚Π΅ Π΅Π³ΠΎ свойство Align Ρ€Π°Π²Π½Ρ‹ΠΌ alClient, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π·Π°Π½ΡΠ» всю ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΠ΅Ρ€Π΅Π½Π΅ΡΠΈΡ‚Π΅ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³Π° открытия графичСского Ρ„Π°ΠΉΠ»Π° OpenPictureDialog (см. Ρ€Π°Π·Π΄Π΅Π» 8.2). ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню MainMenu (см. Ρ€Π°Π·Π΄Π΅Π» 6.1) ΠΈ Π·Π°Π΄Π°ΠΉΡ‚Π΅ Π² Π½Π΅ΠΌ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·Π΄Π΅Π» — Π€Π°ΠΉΠ». Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ этого Ρ€Π°Π·Π΄Π΅Π»Π° Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

if (OpenPictureDialog1. Execute) then

Image1. Picture. LoadFromFile (

OpenPictureDialog1. FileName);

Π­Ρ‚ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ открытия графичСского Ρ„Π°ΠΉΠ»Π° (см. Ρ€ΠΈΡ. 4.4) ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Image1 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Ρ„Π°ΠΉΠ»Π° (см. Ρ€ΠΈΡ. 4.5). ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Ρ„Π°ΠΉΠ» ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любого Ρ‚ΠΈΠΏΠ°: битовая ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°, ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ».

Рис.4.5 Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image Π±ΠΈΡ‚ΠΎΠ²ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ (Π°) ΠΈ ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (6)

Π°)

Π±)

Π’ ΡΡ‚ΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ LoadFromFile ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ ΠΊ Image1. Picture. Если Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ„Π°ΠΉΠ»Ρ‹ Π±ΠΈΡ‚ΠΎΠ²Ρ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†, Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π°

Image1. Picture. Bitmap. LoadFromFile (

OpenPictureDialog1. FileName);

Для ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

Image1. Picture. Icon. LoadFromFile (

OpenPictureDialog1. FileName);

Π° Π΄Π»Ρ ΠΌΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ»ΠΎΠ² — ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

Image1. Picture. Metafile. LoadFromFile (

OpenPictureDialog1. FileName);

ΠΈΠ»ΠΈ

Image1. Picture. Graphic. LoadFromFile (

OpenPictureDialog1. FileName);

Но Π²ΠΎ Π²ΡΠ΅Ρ… этих случаях, Ссли Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π° Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Ρ‚ с ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌΡ‹ΠΌ, Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ошибка. Аналогично Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ SaveToFile с Ρ‚Π΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΉ ΠΊ Picture ΠΈΠ»ΠΈ ΠΊ Picture. Graphic ΠΎΠ½ ΡΠΎΡ…раняСт Π² Ρ„Π°ΠΉΠ»Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ любого Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°. НапримСр, Ссли Π²Ρ‹ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ своС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠΌ SavePictureDialog (см. Ρ€Π°Π·Π΄Π΅Π» 8.2), Π²Π²Π΅Π΄Π΅Ρ‚Π΅ Π² ΠΌΠ΅Π½ΡŽ Ρ€Π°Π·Π΄Π΅Π» Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΈ Π² Π΅Π³ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ помСститС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

if SavePictureDialog1. Execute then

Image1. Picture. SaveToFile (SavePictureDialog1. FileName);

Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ любого Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π² Ρ„Π°ΠΉΠ»Π΅ с Π½ΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. Волько ΠΏΡ€ΠΈ этом, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»ΠΎ Π² Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅ΠΌ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ сохраняСмого Ρ„Π°ΠΉΠ»Π° всС-Ρ‚Π°ΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ сохраняСмого изобраТСния.

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎ для ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ любого Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, Ссли ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ сохранСния Π²Ρ‹ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π½Π°

Image1. Picture. Graphic. SaveToFile (

SavePictrureDialog1. FileName);

ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ свойство Picture. Graphic. А Π΅ΡΠ»ΠΈ Π²Π°ΠΌ извСстСн Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ…Ρ€Π°Π½ΠΈΠΌΠΎΠ³ΠΎ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Image изобраТСния, Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ SaveToFile ΠΊ ΡΠ²ΠΎΠΉΡΡ‚Π²Π°ΠΌ Picture. Bitmap, Picture. Icon ΠΈ Picture. Metafile.

Для всСх рассмотрСнных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Picture, Picture. Bitmap, Picture. Icon ΠΈ Picture. Metafile ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ присваивания Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²:

procedure Assign (Source: TPersistent);

Однако, для BitMap, Icon ΠΈ Metafile ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ значСния ΠΎΠ΄Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²: соотвСтствСнно Π±ΠΈΡ‚ΠΎΠ²Ρ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†, ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΌΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ»ΠΎΠ². ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ значСния Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² гСнСрируСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π•ConvertError. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Picture — ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ, Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ значСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π»ΡŽΠ±Ρ‹Ρ… ΠΈΠ· ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Ρ€Π΅Ρ… классов. А Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Picture ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, Ρ‚ΠΈΠΏ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ совпадаСт с Ρ‚ΠΈΠΏΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, хранящСгося Π² Π½Π΅ΠΌ.

ΠœΠ΅Ρ‚ΠΎΠ΄ Assign ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π΄Π»Ρ ΠΎΠ±ΠΌΠ΅Π½Π° изобраТСниями с Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ Clipboard. НапримСр, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

Clipboard. Assign (Image1. Picture);

занСсСт Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, хранящССся Π² Image1. Аналогично ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° delphi ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅

Image1. Picture. Assign (Clipboard);

ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚ Π² Image1 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, находящССся Π² Π±ΡƒΡ„Π΅Ρ€Π΅ ΠΎΠ±ΠΌΠ΅Π½Π°. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π°ΠΆΠ΅ тСкст.

Надо Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ ΠΎΠ±ΠΌΠ΅Π½Π° Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ uses вашСго модуля ссылку Π½Π° ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Clipbrd. АвтоматичСски Delphi эту ссылку Π½Π΅ Π²ΡΡ‚авляСт.

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ ΡΠ²ΠΎΠΉΡΡ‚Π²Π°ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Image, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ нСдостаток, присущий Π½Π°ΡˆΠ΅ΠΌΡƒ тСстовому ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌΡƒ Π½Π° Ρ€ΠΈΡ. 4.5 ΠŸΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠΊΠ½Π° прилоТСния ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΈΠ»ΠΈ слишком малСньким, ΠΈ Ρ‚ΠΎΠ³Π΄Π° Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ изобраТСния, ΠΈΠ»ΠΈ слишком большим, ΠΈ Ρ‚ΠΎΠ³Π΄Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ нСкрасиво Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΎ Π² Π»Π΅Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹, оставляя ΠΌΠ½ΠΎΠ³ΠΎ пустого пространства. Π­Ρ‚ΠΎΡ‚ нСдостаток ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ, Ссли Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ свойствами Height (высота) ΠΈ Width (ΡˆΠΈΡ€ΠΈΠ½Π°) ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Image. ΠŸΡ€ΠΈ свойствС AutoSize установлСнном Π² true Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Image автоматичСски ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ изобраТСния. И ΡΡ‚ΠΈΠΌΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ измСнСния Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² Ρ„ΠΎΡ€ΠΌΡ‹. НапримСр, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Ρ€Π°Π½Π΅Π΅ ΠΊΠΎΠ΄ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ изобраТСния ΠΈΠ· Ρ„Π°ΠΉΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

if OpenPictureDialog1. Execute then

begin

Image1. Picture. LoadFromFile (

OpenPictureDialog1. FileName);

Form1. ClientHeight: = Image1. Height+10;

Image1. Top: = Form1. ClientRect. Top

+ (Form1. ClientHeight — Image1. Height) div 2;

Form1. ClientWidth: = Image1. Width+10;

Image1. Left: = Form1. ClientRect. Left

+ (Form1. ClientWidth — Image1. Width) div 2;

end;

Π’ ΡΡ‚ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ клиСнтской области Ρ„ΠΎΡ€ΠΌΡ‹ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ нСсколько большС Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Image1, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ благодаря свойству AutoSize. ВнСситС эти исправлСния Π² ΡΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ ΠΈ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ„ΠΎΡ€ΠΌΠ° стала автоматичСски Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ изобраТСния

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Shape

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Shape Ρ‚ΠΎΠ»ΡŒΠΊΠΎ условно ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ отнСсСн ΠΊ ΡΡ€Π΅Π΄ΡΡ‚Π²Π°ΠΌ отобраТСния графичСской ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ просто прСдставляСт собой Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ гСомСтричСскиС Ρ„ΠΈΠ³ΡƒΡ€Ρ‹, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π·Π°ΡˆΡ‚Ρ€ΠΈΡ…ΠΎΠ²Π°Π½Π½Ρ‹Π΅. ОсновноС свойство этого ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° — Shape (Ρ„ΠΎΡ€ΠΌΠ°), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ значСния:

stRectangle

ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ

stRoundRect

ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ со ΡΠΊΡ€ΡƒΠ³Π»Π΅Π½Π½Ρ‹ΠΌΠΈ ΡƒΠ³Π»Π°ΠΌΠΈ

stEllipse

эллипс

stSquare

ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚

stRoundSquare

ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ со ΡΠΊΡ€ΡƒΠ³Π»Π΅Π½Π½Ρ‹ΠΌΠΈ ΡƒΠ³Π»Π°ΠΌΠΈ

stCircle

ΠΊΡ€ΡƒΠ³

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ этих Ρ„ΠΎΡ€ΠΌ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π½Π° Ρ€ΠΈΡ. 4.7

Рис.4.7 ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Shape

Π”Ρ€ΡƒΠ³ΠΎΠ΅ сущСствСнноС свойство ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° — Brush (ΠΊΠΈΡΡ‚ΡŒ). Π­Ρ‚ΠΎ свойство являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Ρ‚ΠΈΠΏΠ° TBrush, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ ряд подсвойств, Π² Ρ‡Π°ΡΡ‚ности: Ρ†Π²Π΅Ρ‚ (Brush. Color) ΠΈ ΡΡ‚ΠΈΠ»ΡŒ (Brush. Style) Π·Π°Π»ΠΈΠ²ΠΊΠΈ Ρ„ΠΈΠ³ΡƒΡ€Ρ‹. Π—Π°Π»ΠΈΠ²ΠΊΡƒ ΠΏΡ€ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… значСниях Style Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° Ρ€ΠΈΡ. 4.7 Π’Ρ€Π΅Ρ‚ΡŒΠ΅ ΠΈΠ· ΡΠΏΠ΅Ρ†ΠΈΡ„ичСских свойство ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Shape — Pen (ΠΏΠ΅Ρ€ΠΎ), ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅Π΅ ΡΡ‚ΠΈΠ»ΡŒ Π»ΠΈΠ½ΠΈΠΉ. Π­Ρ‚ΠΎ свойство, ΠΊΠ°ΠΊ ΠΈ ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎ Brush, ΡƒΠΆΠ΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π»ΠΈΡΡŒ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ 4.2. Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ± ΡΡ‚ΠΈΡ… свойствах Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π² Π³Π»Π°Π²Π΅ 10*.

* Π’ ΠΊΠ½ΠΈΠ³Π΅ Π½Π΅Ρ‚ Π³Π»Π°Π²Ρ‹ 10. ВСроятно, Π°Π²Ρ‚ΠΎΡ€ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π» ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² ΡΡ‚ΠΎΠΉ Π³Π»Π°Π²Π΅ справочныС ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ ΠΏΠΎ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½Π½Ρ‹ΠΌ Π² ΠΊΠ½ΠΈΠ³Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ Π”Π΅Π»ΡŒΡ„ΠΈ. — ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° элСктронной вСрсии.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Chart

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Chart. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ позволяСт ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ выглядят ΠΎΡ‡Π΅Π½ΡŒ эффСктно (рис. 4.8). ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Chart ΠΈΠΌΠ΅Π΅Ρ‚ мноТСство свойств, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², событий, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Ссли всС ΠΈΡ… Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ, Ρ‚ΠΎ ΡΡ‚ΠΎΠΌΡƒ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π±Ρ‹ ΠΏΠΎΡΠ²ΡΡ‚ΠΈΡ‚ΡŒ Ρ†Π΅Π»ΡƒΡŽ Π³Π»Π°Π²Ρƒ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ограничимся рассмотрСниСм Ρ‚ΠΎΠ»ΡŒΠΊΠΎ основных характСристик Chart. А Ρ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ Π²ΠΎ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΠΎΠΉ справкС Delphi ΠΈΠ»ΠΈ просто ΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ…, экспСримСнтируя с Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ.

Рис.4.8 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ прилоТСния с Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ: Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ состояниС (Π°) ΠΈ ΡΠΎΡΡ‚ояниС ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ° (Π±)

Π°)

Π±)

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Chart являСтся ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Series Ρ‚ΠΈΠΏΠ° TChartSeries — сСрий Π΄Π°Π½Π½Ρ‹Ρ…, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‰ΠΈΡ…ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ стилями отобраТСния. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ нСсколько сСрий. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊ, Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ сСрия Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΡ€ΠΈΠ²ΠΎΠΉ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, Ρ‚ΠΎ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²ΠΈΠ΄ΠΎΠ² Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π»ΠΎΠΆΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π° нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сСрий, для Π΄Ρ€ΡƒΠ³ΠΈΡ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для ΠΊΡ€ΡƒΠ³ΠΎΠ²Ρ‹Ρ… Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ) это, вСроятно, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ нСкрасиво. Однако, ΠΈ Π² ΡΡ‚ΠΎΠΌ случаС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π΄Π°Ρ‚ΡŒ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Chart нСсколько сСрий ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… с Ρ€Π°Π·Π½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠΎΠΌ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹. Π’ΠΎΠ³Π΄Π°, дСлая Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Π½ΠΈΡ…, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Ρ‹Π±ΠΎΡ€ Ρ‚ΠΈΠΏΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰Π΅ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠ΅ Π΅Π³ΠΎ Π΄Π°Π½Π½Ρ‹Π΅.

РазмСститС ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π΄Π²Π° (Ссли Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ воспроизвСсти рис. 4.8) ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Chart Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠΈΠ΅ΡΡ Π² Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€Π΅ ΠžΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² свойства. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ пояснСния Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ· Π½ΠΈΡ….

AllowPanning

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π½Π°Π±Π»ΡŽΠ΄Π°Π΅ΠΌΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π²ΠΎ Π²Ρ€Π΅ΠΌΡ выполнСния, наТимая ΠΏΡ€Π°Π²ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΌΡ‹ΡˆΠΈ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния: pmNone — ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ° Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Π°, pmHorizontal, pmVertical ΠΈΠ»ΠΈ pmBoth — Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π° соотвСтствСнно ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΈΠ»ΠΈ Π² ΠΎΠ±ΠΎΠΈΡ… направлСниях.

AllowZoom

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ выполнСния ΠΌΠ°ΡΡˆΡ‚Π°Π± изобраТСния, вырСзая Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° курсором ΠΌΡ‹ΡˆΠΈ (Π½Π° Ρ€ΠΈΡ. 4.8 Π± Π²Π½ΠΈΠ·Ρƒ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΌΠΎΠΌΠ΅Π½Ρ‚ просмотра Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°, Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ прСдставлСнного Π½Π° Ρ€ΠΈΡ. 4.8 Π°).

Title

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹.

Foot

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ подпись ΠΏΠΎΠ΄ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠΎΠΉ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ отсутствуСт. ВСкст подписи опрСдСляСтся подсвойством Text.

Frame

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Ρ€Π°ΠΌΠΊΡƒ Π²ΠΎΠΊΡ€ΡƒΠ³ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹.

Legend

Π›Π΅Π³Π΅Π½Π΄Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ — список ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

MarginLeft, MarginRight, MarginTop, MarginBottom

ЗначСния Π»Π΅Π²ΠΎΠ³ΠΎ, ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ, Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ ΠΈ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ ΠΏΠΎΠ»Π΅ΠΉ.

BottomAxis, LeftAxis, RightAxis

Π­Ρ‚ΠΈ свойства ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ характСристики соотвСтствСнно Π½ΠΈΠΆΠ½Π΅ΠΉ, Π»Π΅Π²ΠΎΠΉ ΠΈ ΠΏΡ€Π°Π²ΠΎΠΉ осСй. Π—Π°Π΄Π°Π½ΠΈΠ΅ этих свойств ΠΈΠΌΠ΅Π΅Ρ‚ смысл для Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ.

LeftWall, BottomWall, BackWall

Π­Ρ‚ΠΈ свойства ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ характСристики соотвСтствСнно Π»Π΅Π²ΠΎΠΉ, Π½ΠΈΠΆΠ½Π΅ΠΉ ΠΈ Π·Π°Π΄Π½Π΅ΠΉ Π³Ρ€Π°Π½Π΅ΠΉ области Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ отобраТСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ° (см. Ρ€ΠΈΡ. 4.8 Π°, Π½ΠΈΠΆΠ½ΠΈΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ).

SeriesList

Бписок сСрий Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅.

View3d

Π Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΈΠ»ΠΈ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹.

View3DOptions

Π₯арактСристики Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ отобраТСния.

Chart3DPercent

ΠœΠ°ΡΡˆΡ‚Π°Π± трСхмСрности (для рис. 4.8 это Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΡˆΠΈΡ€ΠΈΠ½Π° Π»Π΅Π½Ρ‚ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°).

Рядом со ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Ρ… свойств Π² Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€Π΅ ΠžΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² располоТСны ΠΊΠ½ΠΎΠΏΠΊΠΈ с ΠΌΠ½ΠΎΠ³ΠΎΡ‚ΠΎΡ‡ΠΈΠ΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ страницу Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ — многостраничного ΠΎΠΊΠ½Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ всС свойства Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ. Π’Ρ‹Π·ΠΎΠ² Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌ Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Chart ΠΈΠ»ΠΈ Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ Π½Π° Π½Π΅ΠΌ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Edit Chart Π²ΠΎ Π²ΡΠΏΠ»Ρ‹Π²ΡˆΠ΅ΠΌ мСню.

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ воспроизвСсти ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π½Π° Ρ€ΠΈΡ. 4.8, сдСлайтС Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Ρ‰Π΅Π»Ρ‡ΠΎΠΊ Π½Π° Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Chart. Π’Ρ‹ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚Π΅ Π² ΠΎΠΊΠ½ΠΎ Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ (рис. 4.9) Π½Π° ΡΡ‚Ρ€Π°Π½ΠΈΡ†Ρƒ Chart, которая ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько Π·Π°ΠΊΠ»Π°Π΄ΠΎΠΊ. ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго вас Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π½Π΅ΠΉ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ° Series. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅ Add — Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΠ΅Ρ€ΠΈΡŽ. Π’Ρ‹ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚Π΅ Π² ΠΎΠΊΠ½ΠΎ (рис. 4.10), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Pie — ΠΊΡ€ΡƒΠ³ΠΎΠ²ΡƒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ. Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π²ΡˆΠΈΡΡŒ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΎΠΉ Titles Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π΄Π°Ρ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ° Legend позволяСт Π·Π°Π΄Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ отобраТСния Π»Π΅Π³Π΅Π½Π΄Ρ‹ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ (списка ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ) ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π΅Π΅ Ρ ΡΠΊΡ€Π°Π½Π°, Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ° Panel опрСдСляСт Π²ΠΈΠ΄ ΠΏΠ°Π½Π΅Π»ΠΈ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ отобраТаСтся Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ°, Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ° 3D Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ внСшний Π²ΠΈΠ΄ вашСй Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹: Π½Π°ΠΊΠ»ΠΎΠ½, сдвиг, Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρƒ ΠΈ Ρ‚. Π΄.

Когда Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ ΠΈ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Ρ‚ΠΈΠΏ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ… Chart Π½Π° Π²Π°ΡˆΠ΅ΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ отобраТаСтся Π΅Π΅ Π²ΠΈΠ΄ с Π·Π°Π½Π΅ΡΠ΅Π½Π½Ρ‹ΠΌΠΈ Π² Π½Π΅Π΅ условными Π΄Π°Π½Π½Ρ‹ΠΌΠΈ (см. Ρ€ΠΈΡ. 4.11).

Рис.4.9 Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ, страница Chart, Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ° Series

Рис.4.10 Π’Ρ‹Π±ΠΎΡ€ Ρ‚ΠΈΠΏΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π² Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Ρ‹ ΡΡ€Π°Π·Ρƒ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ примСнСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΡ†ΠΈΠΉ ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ, Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ.

Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° Series, Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰Π°Ρ ряд Π·Π°ΠΊΠ»Π°Π΄ΠΎΠΊ, Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ характСристики отобраТСния сСрии. Π’ Ρ‡Π°ΡΡ‚ности, для ΠΊΡ€ΡƒΠ³ΠΎΠ²ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ Format ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΠΏΡ†ΠΈΡŽ Circled Pie, которая обСспСчит ΠΏΡ€ΠΈ любом Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Chart ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π² Π²ΠΈΠ΄Π΅ ΠΊΡ€ΡƒΠ³Π°. На Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ Marks ΠΊΠ½ΠΎΠΏΠΊΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹ Style ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ написано Π½Π° ΡΡ€Π»Ρ‹Ρ‡ΠΊΠ°Ρ…, относящихся ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ сСгмСнтам Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹: Value — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Percent — ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Ρ‹, Label — названия Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ‚. Π΄. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ рис. 4.8 Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Percent, a Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ General установлСн шаблон ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ², ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†Π΅Π»Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Рис.4.11 Π€ΠΎΡ€ΠΌΠ° прилоТСния рис. 4.8 с Π·Π°Π½Π΅ΡΠ΅Π½Π½Ρ‹ΠΌΠΈ Π² Π½Π΅Π΅ условными Π΄Π°Π½Π½Ρ‹ΠΌΠΈ

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π° ΡΡ‚ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Chart Π΅Ρ‰Π΅ ΠΎΠ΄Π½Ρƒ Ρ‚ΠΎΠΆΠ΄Π΅ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΡΠ΅Ρ€ΠΈΡŽ, Π½Π°ΠΆΠ°Π² Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ Series страницы Chart ΠΊΠ½ΠΎΠΏΠΊΡƒ Clone, Π° Π·Π°Ρ‚Π΅ΠΌ для этой Π½ΠΎΠ²ΠΎΠΉ сСрии Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Change (ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ) ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Bar. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π΄Π²Π° Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ рисункС Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΠ»ΠΎΡ…ΠΎ. Но Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ этой Π½ΠΎΠ²ΠΎΠΉ сСрии Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ Series, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ Π²ΠΈΠ΄ отобраТСния Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ (Π½ΠΈΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ это дСлаСтся).

Π’Ρ‹ΠΉΠ΄ΠΈΡ‚Π΅ ΠΈΠ· Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ, Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ Π² Π²Π°ΡˆΠ΅ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π½ΠΈΠΆΠ½ΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Chart ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ для Π½Π΅Π³ΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅ свойств с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π²Π°ΠΌ Π½Π°Π΄ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π΄Π°Ρ‚ΡŒ Π΄Π²Π΅ сСрии, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π΄Π²Π΅ ΠΊΡ€ΠΈΠ²Ρ‹Π΅, ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Line. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ…, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ Axis ΠΈ Walls для задания ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π½Ρ‹Ρ… характСристик осСй ΠΈ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹Ρ… Π³Ρ€Π°Π½Π΅ΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°.

На ΡΡ‚ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ внСшнСго Π²ΠΈΠ΄Π° прилоТСния Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ. ΠžΡΡ‚Π°Π»ΠΎΡΡŒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, Π·Π°Π΄Π°ΡŽΡ‰ΠΈΠΉ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ. Для тСстового прилоТСния Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π·Π°Π΄Π°Π΄ΠΈΠΌ Π² ΠΊΡ€ΡƒΠ³ΠΎΠ²ΠΎΠΉ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ просто Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ константныС Π΄Π°Π½Π½Ρ‹Π΅, Π° Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ… — Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ синус ΠΈ ΠΊΠΎΡΠΈΠ½ΡƒΡ.

Для задания ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π°Π΄ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ сСрий Series. ΠžΡΡ‚Π°Π½ΠΎΠ²ΠΈΠΌΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ‚Ρ€Π΅Ρ… основных ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ….

ΠœΠ΅Ρ‚ΠΎΠ΄ Clear ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ ΡΠ΅Ρ€ΠΈΡŽ ΠΎΡ‚ Π·Π°Π½Π΅ΡΠ΅Π½Π½Ρ‹Ρ… Ρ€Π°Π½Π΅Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

ΠœΠ΅Ρ‚ΠΎΠ΄ Add:

Add (Const AValue: Double; Const ALabel: String;

AColor: TColor)

позволяСт Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ Π½ΠΎΠ²ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ AValue соотвСтствуСт добавляСмому Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ALabel — Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΈ Π² Π»Π΅Π³Π΅Π½Π΄Π΅, AColor — Ρ†Π²Π΅Ρ‚. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ALabel — Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ пустым: ''.

ΠœΠ΅Ρ‚ΠΎΠ΄ AddXY:

AddXY (Const AXValue, AYValue: Double;

Const ALabel: String; AColor: TColor)

позволяСт Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ Π² Π³Ρ€Π°Ρ„ΠΈΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ AXValue ΠΈ AYValue ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρƒ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ALabel ΠΈ AColor Ρ‚Π΅ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Add.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π°Ρ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π΄Π°Π½Π½Ρ‹Ρ… Π² Π½Π°ΡˆΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΈΠ΄:

const

A1=155;

A2=251;

A3=203;

A4=404;

var

i: word;

begin

With Series1 do

begin

Clear;

Add (A1, 'Π¦Π΅Ρ… 1', clYellow);

Add (A2, 'Π¦Π΅Ρ… 2', clBlue);

Add (A3, 'Π¦Π΅Ρ… 3', clRed);

Add (A4, 'Π¦Π΅Ρ… 4', clPurple);

end;

Series2. Clear;

Series3. Clear;

for i: =0 to 100 do

begin

Series2. AddXY (0.02*Pi*i, sin (0.02*Pi*i), '', clRed);

Series3. AddXY (0.02*Pi*i, cos (0.02*Pi*i), '', clBlue);

end;

end;

Π­Ρ‚Ρƒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Ρ‰Π΅Π»Ρ‡ΠΊΠ° ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ мСню ΠΈΠ»ΠΈ просто Π² ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ OnCreate Ρ„ΠΎΡ€ΠΌΡ‹. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Clear Π½ΡƒΠΆΠ½Ρ‹, Ссли Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния Π²Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅. Π‘Π΅Π· этих ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Add ΠΈ AddXY Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ Π½ΠΎΠ²Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ, Π½Π΅ ΡƒΠ΄Π°Π»ΠΈΠ² ΠΏΡ€Π΅ΠΆΠ½ΠΈΠ΅.

Если Π²Ρ‹ ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π»ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Π² Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅, Π΄Π²Π΅ сСрии Series1 ΠΈ Series4 Ρ€Π°Π·Π½Ρ‹Ρ… Π²ΠΈΠ΄ΠΎΠ² — Pie ΠΈ Bar, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ввСсти ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ, ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‰ΡƒΡŽ ΠΏΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Ρ‚ΠΈΠΏ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚Ρƒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ввСсти Π² ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ OnClick ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ мСню ΠΈΠ»ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, просто Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Ρ‰Π΅Π»Ρ‡ΠΊΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ Chart. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Series4 ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ эту Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ Π² ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π½Π΅Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

Series4. Assign (Series1);

Series4. Active: =false;

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ· ΡΡ‚ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² пСрСписываСт Π΄Π°Π½Π½Ρ‹Π΅, ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹Π΅ Π² Series1, Π² ΡΠ΅Ρ€ΠΈΡŽ Series4. А Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π΄Π΅Π»Π°Π΅Ρ‚ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ ΡΠ΅Ρ€ΠΈΡŽ Series4. Π‘ΠΌΠ΅Π½Π° Ρ‚ΠΈΠΏΠ° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ осущСствляСт ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°

Series1. Active: = not Series1. Active;

Series4. Active: = not Series4. Active;

На Ρ€ΠΈΡ. 4.8 Π± Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²ΠΈΠ΄ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ