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

ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ элСктронного ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ°

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ На Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ элСмСнты: содСрТаниС, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, содСрТащая ΠΈΠ·Π»Π°Π³Π°Π΅ΠΌΡ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», ΠΊΠ½ΠΎΠΏΠΊΠΈ для просмотра Ρ‚Π΅ΠΌΡ‹, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ для сохранСния Ρ‚Π΅ΠΌΡ‹ Π² Ρ„Π°ΠΈΠ». Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ прСдставлСно Π² Π²ΠΈΠ΄Π΅ иСрархичСской структуры, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰Π΅ΠΉ Π΄Π΅Ρ€Π΅Π²ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², ΠΈ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ Π² Π»Π΅Π²ΠΎΠΉ части Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ Π΅ΠΌΡƒ ΠΏΡƒΠ½ΠΊΡ‚… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ элСктронного ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ° (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π’ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ врСмя всС Ρ‡Π°Ρ‰Π΅ стали ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π½Π΅Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ обучСния, ΠΈ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ качСствСнного процСсса ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ элСктронныС пособия ΠΈ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… систСм Π² ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… завСдСниях ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ всС большСС распространСниС. Π’ Ρ‡Π°ΡΡ‚ности, постСпСнно внСдряСтся дистанционная Ρ„ΠΎΡ€ΠΌΠ° обучСния, ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰Π°Ρ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ освоСниС ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… дисциплин ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ примСнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-пСдагогичСских срСдств. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½Π° Π΄Π½Π΅Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ обучСния Ρ‚Π°ΠΊΠΈΠ΅ срСдства ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅.

Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ большого числа ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, элСктронных пособий ΠΈ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠΎΠ², Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½ΠΎΠ²Ρ‹Ρ… Π½Π΅ Ρ‚СряСт своСй Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π­Ρ‚ΠΎ обусловлСно Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ Π²ΡΠ΅ ΠΈΠ· Π½ΠΈΡ… ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‚ Ρ‚Ρƒ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΡƒ, всС Ρ‚Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ аспСкты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ зависят ΠΎΡ‚ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ прСподаватСля. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ постоянно Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ трСбования ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌ, измСняСтся сам ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-пСдагогичСскиС срСдства Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΡƒΠΆΠ΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅. По ΡΡ‚ΠΈΠΌ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Ρ‚Π΅ΠΌΡ‹ прСдставлСнного курсового ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π²Ρ‹Π±Ρ€Π°Π½ΠΎ элСктронный ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ.

Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π³Π»Π°Π²Π΅ ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ записки «ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ΠΈ» ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠ΅ трСбования ΠΊ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ, производится ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ ΠΈ Π°Π½Π°Π»ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-пСдагогичСских срСдств, уточняСтся ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ обучСния, Π΅Π³ΠΎ Ρ‚Π΅ΠΌΠ°, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ трСбования ΠΊ ΠΈΠ½Ρ‚СрфСйсу.

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π³Π»Π°Π²Π΅ «Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ систСма» рассматриваСтся характСристики Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ срСдства для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ срСдства.

Π’ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ Π³Π»Π°Π²Π΅ «ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ» ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ срСдства Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ сцСнария, приводится характСристика классов, ΠΈΡ… ΠΈΠ΅Ρ€Π°Ρ€Ρ…ия, осущСствляСтся ΠΈ ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ся Π²Ρ‹Π±ΠΎΡ€ инструмСнтов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°.

Π’ Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠΉ Π³Π»Π°Π²Π΅ «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ рСализация» ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Ρ„ΠΎΡ€ΠΌΡ‹ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΡ… Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ²ΡΠ·ΡŒ с ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ интСрфСйса), физичСская структура (ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ) ΠΈ Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·ΡŒ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ тСстированиС ΠΈ Π΅Π³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹.

Π’ ΠΏΡΡ‚ΠΎΠΉ Π³Π»Π°Π²Π΅ «ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ примСнСния» ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ, систСмныС трСбования, ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»ΡΠ΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ приводится описаниС систСмы ΠΏΠΎΠΌΠΎΡ‰ΠΈ.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΡΡ€Π΅Π΄ΡΡ‚Π²Π°, нСдостатки Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΈ ΠΏΠ΅Ρ€ΡΠΏΠ΅ΠΊΡ‚ΠΈΠ²Ρ‹ Π΅Π³ΠΎ дальнСйшСй ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

1 ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ΠΈ

1.1 ВрСбования ΠΊ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ прСдставлСнного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-пСдагогичСского срСдства ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ Π·Π½Π°Π½ΠΈΠ΅ основ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ. Для изучСния ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ², прСдставлСнных Π² Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΌ элСктронном ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π·Π½Π°Π½ΠΈΠΉ ΠΎ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования (абстракция, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ доступа, иСрархия). Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-пСдагогичСским срСдством Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ знания ΠΏΠΎ ΡΠ·Ρ‹ΠΊΡƒ программирования C++. Π’ Ρ‡Π°ΡΡ‚ности, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ прСдставлСниС ΠΎ ΡΠΈΠ½Ρ‚аксисС языка Π‘++, Π΅Π³ΠΎ основных ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°Ρ… ΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡΡ…, Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΈΠΏΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. ВсС это трСбуСтся для понимания прСдставлСнных Π² ΠΈΠ·Π»Π°Π³Π°Π΅ΠΌΠΎΠΌ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ².

Π Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ примСнСния, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ использованиС ΠΎΠ΄Π½ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. Групповая Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌ элСктронным ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ ΠΏΡƒΡ‚Π΅ΠΌ использования ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Ρ‡Π»Π΅Π½ΠΎΠΌ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ экзСмпляра ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

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

1.2 ΠžΠ±Π·ΠΎΡ€ ΠΈ Π°Π½Π°Π»ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-пСдагогичСских срСдств Π’ Π½Π°ΡΡ‚оящСС врСмя сущСствуСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ число ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-пСдагогичСских срСдств ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Π‘++. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ… ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой html-ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠΈ. Однако Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ отсутствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ просмотра дСмонстрационных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, прСимущСствСнно Ρ‚Π°ΠΊΠΈΠ΅ срСдства Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ся ΡƒΠ·ΠΊΠΎ спСциализированными, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ Π½Π° ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ C++ Π² Ρ†Π΅Π»ΠΎΠΌ.

1.3 Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ На Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ элСмСнты: содСрТаниС, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, содСрТащая ΠΈΠ·Π»Π°Π³Π°Π΅ΠΌΡ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», ΠΊΠ½ΠΎΠΏΠΊΠΈ для просмотра Ρ‚Π΅ΠΌΡ‹, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ для сохранСния Ρ‚Π΅ΠΌΡ‹ Π² Ρ„Π°ΠΈΠ». Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ прСдставлСно Π² Π²ΠΈΠ΄Π΅ иСрархичСской структуры, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰Π΅ΠΉ Π΄Π΅Ρ€Π΅Π²ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², ΠΈ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ Π² Π»Π΅Π²ΠΎΠΉ части Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ Π΅ΠΌΡƒ ΠΏΡƒΠ½ΠΊΡ‚ содСрТания, послС Ρ‡Π΅Π³ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ просмотра. Π”Π°Π»Π΅Π΅ Π² ΠΎΠ±Π»Π°ΡΡ‚ΠΈ излоТСния, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰Π΅ΠΉ всю ΠΏΡ€Π°Π²ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹, появляСтся ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΠΏΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ Ρ‚Π΅ΠΌΠ΅. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ просматриваСт тСкст Π»Π΅ΠΊΡ†ΠΈΠΈ, ΠΈ ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡŽ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½Π½ΡƒΡŽ Ρ‚Π΅ΠΌΡƒ Π² Ρ‚Скстовый Ρ„Π°ΠΈΠ».

2 Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ систСма

2.1 АппаратныС трСбования Для Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ функционирования Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ срСдства Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой MS Windows NT/2000/XP. ΠŸΡ€ΠΈ этом ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌΠΈ трСбованиями Π±ΡƒΠ΄Π΅Ρ‚ такая комплСктация, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ самой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ Π±Π΅Π· сбоСв ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ.

2.2 БистСмныС трСбования Π”Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ срСдство Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΎΡΡŒ Π½Π° ΠžΠŸ Windows XP SP3, ΠΏΡ€ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ оснащСнии PC:

процСссор — CPU Intel Celeron 1700 MHz;

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ½ΡΠΊΠ°Ρ ΠΏΠ»Π°Ρ‚Π° — MB Giga-Byte 8PE800-RS2;

Π’ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚Π° — SVGA GeForce MX5200−8×128MB ΠΈ SVGA GeForce 2 Ti -8×64MB;

ΠžΠ—Π£ — DDR RAM 256MB PC-3200 Hynix/DDR400 + Samsung/DDR400 ;

ВинчСстСр — Samsung 160Gb

Для Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ функционирования ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ PC со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ оснащСниСм:

процСссор с Ρ‡Π°ΡΡ‚ΠΎΡ‚ΠΎΠΉ 200Mhz ΠΈ Π²Ρ‹ΡˆΠ΅;

ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ объСм ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти 32 Mb;

свободноС мСсто Π½Π° Π΄ΠΈΡΠΊΠ΅ 10 Mb;

опСрационная систСма Windows 9. x/2000/XP;

ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°, ΠΌΡ‹ΡˆΡŒ.

2.3 ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° трСбуСтся опСрационная систСма сСмСйства Windows, Π² Ρ‡Π°ΡΡ‚ности Windows XP. Данная ОБ содСрТит качСствСнный интСрфСйс, прСдоставляСт ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ срСдства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Windows XP являСтся Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡˆΠ½ΠΈΠΉ дСнь ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ°ΠΌΡ‹Ρ… распространСнных систСм срСди ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, поэтому Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ высокого спроса Π½Π° Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

3 ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ

3.1 ОписаниС классов Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ интСгрированная срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Borland C++ Builder 6.0, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ привСсти описаниС классов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ…ΡΡ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ VCL — Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚.

Класс TObject являСтся Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ классом для всСх ΠΏΡ€ΠΎΡ‡ΠΈΡ… ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°Π΅ΠΌΡ‹Ρ… классов. TObject инкапсулируСт ΠΎΠ±Ρ‰Π΅Π΅ для всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² систСмы C++Builder Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ:

— ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ конструктора ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, Π° Π΄Π΅ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Π° Ρ€Π°Π·Ρ€ΡƒΡˆΠ°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ —экзСмпляр класса Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΎΠΉ памяти. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ TObject Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

— ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ RTTI ΠΎΠ± ΠΈΠΌΠ΅Π½ΠΈ, Ρ‚ΠΈΠΏΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ Π΅Π³ΠΎ свойствах, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ ΠΊΠ°ΠΊ _published.

— ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сообщСний.

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ этих ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ использования срСдой C++Builder. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ всС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°Ρ‚ΡŒΡΡ нСпосрСдствСнно ΠΎΡ‚ ΠΊΠ»Π°ΡΡΠ° TComponent ΠΈΠ»ΠΈ ΠΎΡ‚ Π΅Π³ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠ². TComponent, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠΌ TObject, наслСдуСт Π΅Π³ΠΎ Ρ‡Π»Π΅Π½Ρ‹, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΡΠ²ΠΎΠΉΡΡ‚Π²Π°.

TObject ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для объявлСния простых ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ся ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ Π½Π΅ Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ся Π² ΠΏΠΎΡ‚очности ΠΈ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠΈ.

Класс TPersistent нСпосрСдствСнно ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ ΠΎΡ‚ TObject. Π­Ρ‚ΠΎΡ‚ абстрактный класс Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… свойств ΠΈΠ»ΠΈ событий, ΠΎΠ΄Π½Π°ΠΊΠΎ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π°ΡŽΡ‚ особыС способности присваивания ΠΈ ΠΏΠΎΡ‚очности.

TPersistent опрСдСляСт ряд ΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Ρ‹ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ:

— Assign позволяСт ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ значСния свойствам.

— AssignTo позволяСт ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ содСрТимоС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°Π΅Ρ‚ это ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ ΠΎΡ‚ TPersistent класс TClipboard).

— DefineProperties позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ ΡΠΎΡ…ранСния Π² ΠΏΠΎΡ‚ΠΎΠΊΠ΅ особых Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свойств. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ свойства, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊ _published.

Класс TComponent нСпосрСдствСнно ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ ΠΎΡ‚ TPersistent. Как ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ сказано, всС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ ΠΎΡ‚ TComponent ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ находится Π² Π΅Π³ΠΎ Π²Π»Π°Π΄Π΅Π½ΠΈΠΈ. TComponent инкапсулируСт ΠΎΠ±Ρ‰Π΅Π΅ для всСх ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, обусловлСнноС свойствами ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚:

— ΠΏΠ΅Ρ€Π΅Π½ΠΎΡ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΈΠ· ΠŸΠ°Π»ΠΈΡ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΡΡ†ΠΈΠΈ Π² ΠΎΠΊΠ½Π΅ Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Ρ„ΠΎΡ€ΠΌ.

— ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ владСния ΠΈ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚.

— ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ характСристики поточности, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΡΡ‚Π°ΠΏΠ΅ проСктирования.

— Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ манипулирования Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ Π½Π° ΡΡ‚Π°Π΄ΠΈΠΈ проСктирования.

Класс TComponent опрСдСляСт ряд особых свойств:

— Owner — ссылаСтся Π½Π° Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.

— ComponentCount — число ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π² ΠΏΠ΅Ρ€Π΅Ρ‡Π½Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π²Π»Π°Π΄Π΅Π΅Ρ‚ данная ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°.

— Componentlndex — индСкс ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π² ΠΏΠ΅Ρ€Π΅Ρ‡Π½Π΅, начиная с 0.

— Components — Бвойство, содСрТащСС ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π²Π»Π°Π΄Π΅Π΅Ρ‚ данная ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°.

— ComponentState — Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.

— ComponentStyle — ΡΡ‚ΠΈΠ»ΡŒ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.

— Name — имя ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.

— Tag — свойство Ρ‚ΠΈΠΏΠ° int, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ значСния ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, ΠΏΠΎ ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ программиста.

Класс TComponent опрСдСляСт ряд ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ΄Π°ΡŽΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠΏΡ€Π°Π²ΠΎ владСния Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ доступа ΠΊ Π½ΠΈΠΌ посрСдством Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²:

— Destroying ΠΈ DestroyComponents ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΎΠ½Π° Π²Π»Π°Π΄Π΅Π΅Ρ‚, Π² ΡΠΎΡΡ‚ояниС, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°Ρ‚ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΡŽ.

— HasParent Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π±ΡƒΠ»Π΅Π²ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ родитСля ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹. ΠžΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ ΡΡ‚ΠΎΠΌΡƒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ слСдуСт Π΄ΠΎ ΡΡΡ‹Π»ΠΎΠΊ ΠΊ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŽ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.

— InsertComponent добавляСт ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡƒΡŽ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, ΠΊ ΠΏΠ΅Ρ€Π΅Ρ‡Π½ΡŽ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π²Π»Π°Π΄Π΅Π΅Ρ‚ данная ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, Π° RemoveComponent удаляСт ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ ΠΈΠ· ΡΡ‚ΠΎΠ³ΠΎ пСрСчня.

— FindComponent Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ экзСмпляра ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ извСстно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ имя, Π½ΠΎ Π½Π΅ΠΈΠ·Π²Π΅ΡΡ‚Π½Π° ссылка Π½Π° Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° Класс TControl опрСдСляСт ΠΎΠ±Ρ‰ΠΈΠ΅ для Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Ρ‡Π»Π΅Π½Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΡΠΎΠ±Ρ‹Ρ‚ия.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ элСмСнты TControl ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ сСбя, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Π³ΠΎ свойства ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ с ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ ΠΈ Π²ΠΈΠ΄ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Top, Left, Width, Height ΠΈ Cursor, Hint), Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ свойства относятся ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ области ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° (ClientRect, ClientWidth ΠΈ ClientHeight).

TControl Ρ‚Π°ΠΊΠΆΠ΅ Π²Π²ΠΎΠ΄ΠΈΡ‚ свойства, ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ, Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ, Ρ†Π²Π΅Ρ‚ ΠΈ ΡˆΡ€ΠΈΡ„Ρ‚ элСмСнтов управлСния (Visible, Enabled, Color ΠΈ Font). Бвойства Text ΠΈ Caption ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ установку Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… тСкстов ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠΉ.

НаличиС свойства Parent (Π ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ), содСрТащСго ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ссылку, обусловлСно Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ класса TControl ΠΈΠΌΠ΅Ρ‚ΡŒ родитСля. Π­Ρ‚ΠΎΡ‚ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌ ΠΎΡ‚ TWinControl, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ обязаны Π±Ρ‹Ρ‚ΡŒ ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΌΠΈ элСмСнтами управлСния.

TControl содСрТит ряд событий, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈ манипуляциях ΠΌΡ‹ΡˆΡŒΡŽ Π½Π°Π΄, Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ элСмСнтами управлСния (OnClick, OnDblClick, OnMouseDown, OnMouseMove, OnMouseUp, OnDragOver, OnDragDrop ΠΈ OnEndDrag).

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ ΠΎΡ‚ TWinControl ΠΈΠ»ΠΈ TGraphicControl. Π­Ρ‚ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ классы Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½ΠΈΠΆΠ΅.

Класс TWinControl инкапсулируСт ΠΎΠΊΠΎΠ½Π½Ρ‹Π΅ элСмСнты управлСния с Π΄Π΅ΡΠΊΡ€ΠΈΠΏΡ‚ΠΎΡ€Π°ΠΌΠΈ. НСкоторыС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΎΡ‚ TWinControl (ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ TEdit, TListBox ΠΈ TComboBox) ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‚ стандартныС элСмСнты управлСния Windows — поля рСдактирования, простыС ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ списки ΠΈ Ρ‚. Π΄. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ программисту Π½Π΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ‚ся ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с Π½ΠΈΠΌΠΈ посрСдством стандартных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Windows API, Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ свойствами ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ, прСдоставляСмыми самими ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ.

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΎΡ‚ TWinControl ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ трСмя основными характСристиками: ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠΊΠΎΠ½Π½Ρ‹Π΅ дСскрипторы, способны ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ фокус Π²Π²ΠΎΠ΄Π° ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ родитСлями Π΄Ρ€ΡƒΠ³ΠΈΡ… элСмСнтов управлСния. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ свойства TWinControl ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для измСнСния фокуса, обслуТивания событий ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈ ΠΎΡ‚обраТСния ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹:

— Brush. УправляСт Ρ†Π²Π΅Ρ‚ΠΎΠΌ ΠΈ ΠΎΡ€Π½Π°ΠΌΠ΅Π½Ρ‚ΠΎΠΌ ΠΊΠ°Π½Π²Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ ΠΏΡ€ΠΈ Π·Π°Π»ΠΈΠ²ΠΊΠ΅ графичСских Ρ„ΠΈΠ³ΡƒΡ€ ΠΈ Ρ„ΠΎΠ½Π°.

— Controls. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ список элСмСнтов управлСния, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… TWinControl являСтся Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌ.

— ControlCount. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ число элСмСнтов управлСния, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… TWinControl являСтся Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌ.

— Ctl3d. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, трСбуСтся Π»ΠΈ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.

— Handle. БсылаСтся Π½Π° ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΉ дСскриптор ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Windows, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ инкапсулируСт TWinControl. Π­Ρ‚ΠΎ свойство пСрСдаСтся Ρ‚Π΅ΠΌ стандартным функциям Windows API, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ дСскриптор ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€.

— HelpContext. Π—Π°Π΄Π°Π΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ контСкстной справки, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ Π² Ρ„Π°ΠΉΠ»Π΅ ΠΏΠΎΠΌΠΎΡ‰ΠΈ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .hlp. Π­Ρ‚ΠΎ свойство позволяСт ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ контСкстно-Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ поиск Π² ΡΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΎΠΉ слуТбС для ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚.

— Showing. Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Π²ΠΈΠ΄ΠΈΠΌΠ° ΠΈΠ»ΠΈ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°.

— TabStop. Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ табуляции для Π²Ρ‹Π±ΠΎΡ€Π° Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.

— TabOrder. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ табулятора Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ TWinControl Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для управлСния фокусом, получСния статусной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, диспСтчСризации сообщСний ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ:

— Broadcast ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для рассылки сообщСний всСм ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ°ΠΌ TWinControl.

— CanFocus Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π±ΡƒΠ»Π΅Π²ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ опрСдСляСт, ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ TWinControl ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ фокус Π²Π²ΠΎΠ΄Π°. НапримСр, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ фокус, Ссли Π΅Π΅ ΡΠ²ΠΎΠΉΡΡ‚Π²ΠΎ Visible ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false.

— ContainsControl опрСдСляСт, содСрТится Π»ΠΈ Π΄Π°Π½Π½Ρ‹ΠΉ элСмСнт управлСния Π²Π½ΡƒΡ‚Ρ€ΠΈ класса TWinControl. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅ ΡΠΎΠΎΠ±Ρ‰Π°Π΅Ρ‚ ΠΎ Ρ‚ΠΎΠΌ, являСтся Π»ΠΈ Π΄Π°Π½Π½Ρ‹ΠΉ элСмСнт ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠΌ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ TWinControl. НапримСр, внСшний класс TWinControl ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ элСмСнта, ΠΈ ΡΡ‚Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠ°Ρ ΠΏΡ€Π΅Π΅ΠΌΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒΡΡ Π΄Π°Π»Π΅Π΅. Однако, всС Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ элСмСнты содСрТатся Π²ΠΎ Π²Π½Π΅ΡˆΠ½Π΅ΠΌ классС TWinControl.

— ContrblAtPos Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ссылку Π½Π° ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ°, Ссли элСмСнт управлСния Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°Ρ… области ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° родитСля. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ° ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŽ.

— DisableAlign ΠΈ EnableAlign ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ запрСщСния ΠΈΠ»ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ выравнивания ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π²Π½ΡƒΡ‚Ρ€ΠΈ TWinControl.

— Focused Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, Ссли TWinControl находится Π² Ρ„окусС Π²Π²ΠΎΠ΄Π°, Ρ‚. Π΅. являСтся Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ элСмСнтом Ρ„ΠΎΡ€ΠΌΡ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½.

— HandleAllocated Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, Ссли элСмСнт управлСния ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΉ дСскриптор. HandleNeeded создаСт Π½ΠΎΠ²Ρ‹ΠΉ дСскриптор, Ссли ΠΎΠ½ Π΅Ρ‰Π΅ Π½Π΅ Π±Ρ‹Π» создан. АналогичноС дСйствиС выполняСтся автоматичСски ΠΏΡ€ΠΈ прямом ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ ΡΠ²ΠΎΠΉΡΡ‚Π²Ρƒ Handle.

— InsertControl добавляСт элСмСнт управлСния ΠΊ ΡΠ²ΠΎΠΉΡΡ‚Π²Ρƒ Controls (Ρ‚ΠΈΠΏΠ° массив), дСлая TWinControl своим Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌ. Π›ΡƒΡ‡ΡˆΠΈΠΉ способ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ° Π²ΠΎ Π²Ρ€Π΅ΠΌΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ — просто ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ссылку Π½Π° Ρ€ΠΎΠ΄ΠΈΡ‚Сля свойству Parent. RemoveControl удаляСт элСмСнт управлСния ΠΈΠ· Controls.

— Invalidate ΠΈ Repaint Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ пСрСрисовку ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.

— SetBounds устанавливаСт свойства Π³Ρ€Π°Π½ΠΈΡ† ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ (Left, Top, Width, Height) для TWinControl. ΠŸΡ€ΡΠΌΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… свойств ΠΌΠ΅Π½Π΅Π΅ эффСктивно, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всякий Ρ€Π°Π· сопряТСно с ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²ΠΊΠΎΠΉ

— SetFocus Π°ΠΊΡ‚ΠΈΠ²ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ TWinControl.

TWinControl ΠΈΠΌΠ΅Π΅Ρ‚ события, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ взаимодСйствиСм с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€ΠΎΠΉ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ фокуса (OnKeyDown, OnKey Press, OnKeyUp, OnEnter ΠΈ OnExif).

Π Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Ρ€Π΅Π΄ΠΊΠΎ происходят нСпосрСдствСнно ΠΎΡ‚ TWinControl. Π›ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΎΡ‚ ΠΎΠ±Ρ‰Π΅Π³ΠΎ класса TCustomControl, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставляСт ΠΊΠ°Π½Π²Ρƒ для рисования ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ сообщСниС WM_PAINT, ΠΈΠ»ΠΈ ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±ΠΎΠ»Π΅Π΅ спСциализированных классов (TButtonControl, TCustomComboBox, TCustomEdit ΠΈΠ»ΠΈ TCustomListBox).

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΎΡ‚ Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ‚Π½ΠΎΠ³ΠΎ класса TGraphicControl, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ TWinControl, Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ дСскриптора, Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ фокус Π²Π²ΠΎΠ΄Π° ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ родитСлями Π΄Ρ€ΡƒΠ³ΠΈΡ… элСмСнтов управлСния.

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ TGraphicControl ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² Ρ‚Π΅Ρ… ситуациях, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ тСкст ΠΈΠ»ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ, Π½Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ возмоТностям ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΎΠΊΠΎΠ½Π½Ρ‹Ρ… элСмСнтов управлСния. Π˜ΠΌΠ΅ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ достоинства Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, TGraphicControl Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ся систСмными рСсурсами Windows, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ дСскриптора. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, ΠΌΠ΅Ρ‚ΠΎΠ΄ рисования TGraphicControl ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ быстрСС Π·Π° ΡΡ‡Π΅Ρ‚ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ пСрСрисовка ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π° с Π΄ΠΈΡΠΏΠ΅Ρ‚Ρ‡Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ сообщСний Windows, Π° Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ся процСссом рисования, Π·Π°Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌ Π² Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта.

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ TGraphicControl ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ событий, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ манипуляциями с ΠΌΡ‹ΡˆΡŒΡŽ.

TGraphicControl Π²ΠΎΠ·Π»Π°Π³Π°Π΅Ρ‚ Π½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Сля ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ пСрСрисовки. Π­Ρ‚ΠΎΡ‚ класс содСрТит свойство Canvas (Канва), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ обСспСчиваСт доступ ΠΊ ΠΎΡ‚Π²Π΅Π΄Π΅Π½Π½ΠΎΠΉ для рисования повСрхности, ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Paint, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ вызываСтся Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ WM_PAINT, ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΠΎΠ΅ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ элСмСнтом управлСния.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ, содСрТаниСм, Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ, панСлями, ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ, Ρ€Π°ΠΌΠΊΠ°ΠΌΠΈ ΠΈ Π½Π°Π΄ΠΏΠΈΡΡΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ соотвСтствСнно классы TForm, TTreeView, TCppWebBrowser, TPanel, TBitBtn, TBevel ΠΈ TLabel.

3.2 Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ классов Π’ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π΅ присутствуСт иСрархия классов, прСдставлСнная Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 1.

Рисунок 1 — Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ классов

3.3 Π’Ρ‹Π±ΠΎΡ€ ΠΈ ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ инструмСнтов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ срСдства Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° интСгрированная срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Borland C++ Builder 6.0.

Π’Ρ‹Π±ΠΎΡ€ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ срСдства Π½Π΅ ΡΠ»ΡƒΡ‡Π°Π΅Π½ ΠΈ ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ данная ИБР ΠΈΠΌΠ΅Π΅Ρ‚ ряд достоинств. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ прСимущСства Borland C++ Builder ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ срСдствами Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ:

— Π‘ыстрота Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прилоТСния.

— Π’ысокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния Π·Π° ΡΡ‡Π΅Ρ‚ получСния 32-разрядного исполняСмого ΠΊΠΎΠ΄Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ компилятора.

— ΠΠ΅Π²Ρ‹ΡΠΎΠΊΠΈΠ΅ трСбования Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния ΠΊ Ρ€Π΅ΡΡƒΡ€ΡΠ°ΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

— Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ доступа ΠΊ Ρ„ункциям ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм сСмСйства Windows.

— Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π·Π° ΡΡ‡Π΅Ρ‚ встраивания Π² Π½Π΅Π΅ Π½ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, инструмСнтов, экспСртов

— Π£Π΄Π°Ρ‡Π½Π°Ρ ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

— Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ для написания ΠΊΠΎΠ΄Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΡΠ°ΠΌΡ‹Ρ… популярных языков программирования Π‘++.

4 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ рСализация

4.1 Π€ΠΎΡ€ΠΌΡ‹ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Π»Π΅ΠΊΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ элСктронного ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ°. Π­Ρ‚ΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ прСдставлСны Π² Π²ΠΈΠ΄Π΅ dat-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… для отобраТСния Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π² ΠΎΠ±Π»Π°ΡΡ‚ΠΈ излоТСния.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ прСдставлСнного элСктронного ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ° ΡΠ²Π»ΡΡŽΡ‚ΡΡ экранныС Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° Π½ΠΈΡ… Π»Π΅ΠΊΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ².

4.2 Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ строится Π½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΠΈ с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠ΅ Π² Π΅Π΅ Π°Π΄Ρ€Π΅Ρ сообщСния ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ событий. Π­Ρ‚ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ событий ΠΈ Π΅ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ создаСтся Π²ΡΡ‚ΡƒΠΏΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° (Form1), которая ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠ΅ ΠΊ Π·Π°ΠΏΡƒΡΠΊΡƒ Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π—апуск ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ°» (TForm1:SpeedButton1Click) запускаСтся главная Ρ„ΠΎΡ€ΠΌΠ° (Form2). На Π½Π΅ΠΉ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΎ иСрархичСская структура Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ², ΠΈ ΠΏΠΎΠ»Π΅ для отобраТСния Ρ‚Π΅ΠΎΡ€ΠΈΠΈ.

Для Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π° слСдуСт ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΄Π²ΠΎΠΉΠ½ΠΎΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰Π΅Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»Π° послС Ρ‡Π΅Π³ΠΎ вызываСтся функция TForm2: TreeView1DblClick. Данная функция Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, какая Ρ‚Π΅ΠΌΠ° Π²Ρ‹Π±Ρ€Π°Π½Π° Π² ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠΈ, автоматичСски Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ с Ρ‚Π΅ΠΌΠΎΠΉ (dat-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρƒ), Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Π΅Π³ΠΎ Π² ΠΎΠΊΠ½ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Ρ‚Π΅ΠΌ.

Для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌΡƒ ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Ρ€Π°Π·Π΄Π΅Π»Ρƒ прСдусмотрСны ΠΊΠ½ΠΎΠΏΠΊΠΈ «ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π°Ρ», «Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ» ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… вызываСтся событиС TForm2: SpeedButton2Click ΠΈ TForm2: SpeedButton3Click соотвСтствСнно.

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ прСдусмотрСны Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Π±ΠΎΡ€Π° ΡˆΡ€ΠΈΡ„Ρ‚Π°, поиска, отобраТСния Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… подсказок, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ сохранСниС Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ Ρ‚Π΅ΠΌΡ‹ Π² *.txt Ρ„Π°ΠΈΠ».

Для измСнСния ΡˆΡ€ΠΈΡ„Ρ‚Π° слСдуСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠžΠΏΡ†ΠΈΠΈ -> Π¨Ρ€ΠΈΡ„Ρ‚ послС Ρ‡Π΅Π³ΠΎ запускаСтся стандартноС ΠΎΠΊΠ½ΠΎ Π²Ρ‹Π±ΠΎΡ€Π° ΡˆΡ€ΠΈΡ„Ρ‚Π° FontDialog Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΡˆΡ€ΠΈΡ„Ρ‚, ΡΡ‚ΠΈΠ»ΡŒ, Ρ€Π°Π·ΠΌΠ΅Ρ€, Π²ΠΈΠ΄ΠΎΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈ Ρ†Π²Π΅Ρ‚ тСкста ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅.

Для поиска слСдуСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠžΠΏΡ†ΠΈΠΈ -> Поиск послС Ρ‡Π΅Π³ΠΎ запускаСтся стандартноС ΠΎΠΊΠ½ΠΎ поиска FindDialog Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ тСкст для поиска (поиск осущСствляСтся Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ€Π°Π·Π΄Π΅Π»Π΅).

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… подсказок ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ осущСствляСтся ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠžΠΏΡ†ΠΈΠΈ -> Π’ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ подсказки.

Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ осущСствляСтся ΠΏΡƒΡ‚Ρ‘ΠΌ Π²Ρ‹Π±ΠΎΡ€Π° Π½ΡƒΠΆΠ½ΠΎΠΉ Ρ‚Π΅ΠΌΡ‹ (ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½Π° ΡΠΊΡ€Π°Π½Π΅) ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π½ΠΈΠΆΠ½Π΅ΠΌ ΡƒΠ³Π»Ρƒ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ. Π”Π°Π»Π΅Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΡŒ сохранСния Ρ„Π°ΠΉΠ»Π°.

ΠŸΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ вызываСтся событиС TForm2: FormClose, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Application->Terminate ().

4.3 ΠœΠΎΠ΄ΡƒΠ»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π’ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ входят ΠΎΠ΄ΠΈΠ½Π½Π°Π΄Ρ†Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ — Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (головная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° — Ρ„Π°ΠΉΠ» Project1. cpp), Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΈΠ³Π»Π°ΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ (описаниС класса TForm1— Ρ„Π°ΠΉΠ» Unit1. h), Ρ„Π°ΠΉΠ» с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ-Ρ‡Π»Π΅Π½ΠΎΠ² класса TForm1 (Ρ„Π°ΠΉΠ» Unit1. cpp), Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ (описаниС класса TForm2— Ρ„Π°ΠΉΠ» Unit2. h), Ρ„Π°ΠΉΠ» с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ-Ρ‡Π»Π΅Π½ΠΎΠ² класса TForm2 (Ρ„Π°ΠΉΠ» Unit2. cpp), Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΠ± Π°Π²Ρ‚ΠΎΡ€Π΅ (описаниС класса TForm3— Ρ„Π°ΠΉΠ» Unit3. h), Ρ„Π°ΠΉΠ» с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ-Ρ‡Π»Π΅Π½ΠΎΠ² класса TForm3 (Ρ„Π°ΠΉΠ» Unit3. cpp), Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ (описаниС класса TForm4— Ρ„Π°ΠΉΠ» Unit4. h), Ρ„Π°ΠΉΠ» с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ-Ρ‡Π»Π΅Π½ΠΎΠ² класса TForm4 (Ρ„Π°ΠΉΠ» Unit4. cpp).

4.4 Π’Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·ΡŒ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ НаиболСС распространСнная связь, которая ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя модулями, — компиляционная Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ. Π’ C++ такая Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ указываСтся Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ #include (Ρ„Π°ΠΉΠ» Form2. cpp содСрТит Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ #include ΠΊΠΎ Π²ΡΠ΅ΠΌ модулям ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹)

4.5 ВСстированиС ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ этой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’ Ρ…ΠΎΠ΄Π΅ тСстирования ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ»Π°ΡΡŒ Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ выполняСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ дСйствия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ»Π°ΡΡŒ рСакция ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π½ΠΈΡ….

5 ОписаниС примСнСния

5.1 НазначСниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Данная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° прСдставляСт собой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-пСдагогичСскоС срСдство ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для изучСния ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρƒ C++.

5.2 ΠžΠ±Π»Π°ΡΡ‚ΡŒ примСнСния Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π² Ρ†Π΅Π»ΡΡ… ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° ΠΏΠΎ ΡΠ·Ρ‹ΠΊΡƒ Π‘++, Ρ‚Π°ΠΊ ΠΈ Π² ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… завСдСниях Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ срСдства Π² ΡƒΡ‡Π΅Π±Π½ΠΎΠΌ процСссС.

5.3 БистСма ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ справка.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠŸΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½Π°Ρ Π·Π°Π΄Π°Ρ‡Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ элСктронный ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, внСдряя Π΅Π³ΠΎ Π² ΡƒΡ‡Π΅Π±Π½Ρ‹ΠΉ процСсс. Однако, ΠΊΠ°ΠΊ ΠΈ Π² Π»ΡŽΠ±ΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ описанной Π²Ρ‹ΡˆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ мноТСство нСдостатков.

Π’ Ρ‡Π°ΡΡ‚ности Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ отсутствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ контроля Π·Π½Π°Π½ΠΈΠΉ ΠΏΡƒΡ‚Π΅ΠΌ провСдСния тСстирования, Ρ‡Ρ‚ΠΎ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся плюсом прСдставлСнного ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½ Π½Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π·Π²Π°Π½ΠΎ отсутствиСм ΠΎΠΏΡ‹Ρ‚Π° Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°.

НСсмотря Π½Π° ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ нСдостатки, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ срСдство ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΠΎ для использования Π² Ρ…ΠΎΠ΄Π΅ ΡƒΡ‡Π΅Π±Π½ΠΎΠ³ΠΎ процСсса ΠΈ Π΄Π»Ρ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ изучСния Ρ‚Π΅ΠΌ ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρƒ язык программирования C++. Π’ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅ΠΌ ΠΏΡ€ΠΈ нСобходимости Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ соблюдался Π΅Π΄ΠΈΠ½Ρ‹ΠΉ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ для понимания ΡΡ‚ΠΈΠ»ΡŒ программирования.

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников

1. Π›ΠΈΠ±Π΅Ρ€Ρ‚ΠΈ, ДТСсс. Освой ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π‘++ Π·Π° 21 дСнь: 3-Π΅ ΠΈΠ·Π΄, ΠΏΠ΅Ρ€. Ρ Π°Π½Π³Π».: Π£Ρ‡. пос. — Πœ.: Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π΄ΠΎΠΌ «Π’ΠΈΠ»ΡŒΡΠΌΡ», 2000. — 816 с.: ΠΈΠ». — ΠŸΠ°Ρ€Π°Π». Ρ‚ΠΈΡ‚. Π°Π½Π³Π».

2. Π‘ΡƒΡ‡ Π“. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ· ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° Π‘++. 2-Π΅ ΠΈΠ·Π΄.: ΠŸΠ΅Ρ€. Ρ Π°Π½Π³Π». — Πœ.: Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ Π‘ΠΈΠ½ΠΎΠΌ, БПб.: НСвский Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚, 1999.

3. ΠŸΡ€Π°Ρ‚Π° Π‘Ρ‚ΠΈΠ²Π΅Π½. Π―Π·Ρ‹ΠΊ программирования C++. Π›Π΅ΠΊΡ†ΠΈΠΈ ΠΈ ΡƒΠΏΡ€Π°ΠΆΠ½Π΅Π½ΠΈΡ.Π£Ρ‡Π΅Π±Π½ΠΈΠΊ.: ΠŸΠ΅Ρ€. Ρ Π°Π½Π³Π». — Πœ.: Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ Диасофт, 2004.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, А Π’Скст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

//Ρ„Π°ΠΉΠ» с Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Project1. cpp

//—————————————————————————————————————;

#include

#pragma hdrstop

USEFORM («Unit1.cpp», Form1);

USEFORM («Unit2.cpp», Form2);

USEFORM («Unit3.cpp», Form3);

USEFORM («Unit4.cpp», Form4);

//—————————————————————————————————————;

#include «Unit1.h»

HRGN Rgn;

//—————————————————————————————————————;

WINAPI WinMain (HINSTANCE, HINSTANCE, LPSTR, int)

{

try

{

Application->Initialize ();

Application->CreateForm (__classid (TForm1), &Form1);

Application->CreateForm (__classid (TForm3), &Form3);

Application->CreateForm (__classid (TForm4), &Form4);

{

Rgn=CreateEllipticRgn (0,0,Form1->Width, Form1->Height);

SetWindowRgn (Form1->Handle, Rgn, True);

}

Application->CreateForm (__classid (TForm2), &Form2);

Application->Run ();

}

catch (Exception &exception)

{

Application->ShowException (&exception);

}

return 0;

}

//—————————————————————————————————————;

// Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Unit1. H Ρ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ класса Ρ„ΠΎΡ€ΠΌΡ‹ Form1

//—————————————————————————————————————;

#ifndef Unit1H

#define Unit1H

//—————————————————————————————————————;

#include

#include

#include

#include

#include

#include

#include

#include

#include

//—————————————————————————————————————;

class TForm1: public TForm

{

__published:// IDE-managed Components

TSpeedButton *SpeedButton1;

TSpeedButton *SpeedButton2;

TImage *logo;

void __fastcall SpeedButton1Click (TObject *Sender);

void __fastcall SpeedButton2Click (TObject *Sender);

void __fastcall SpeedButton1MouseMove (TObject *Sender,

TShiftState Shift, int X, int Y);

void __fastcall FormMouseMove (TObject *Sender, TShiftState Shift,

int X, int Y);

void __fastcall SpeedButton2MouseMove (TObject *Sender,

TShiftState Shift, int X, int Y);

private:// User declarations

public:// User declarations

__fastcall TForm1(TComponent* Owner);

};

//—————————————————————————————————————;

extern PACKAGE TForm1 *Form1;

//—————————————————————————————————————;

#endif

// Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Unit2. H Ρ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ класса Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Form2

//—————————————————————————————————————;

#ifndef Unit2H

#define Unit2H

//—————————————————————————————————————;

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

//—————————————————————————————————————;

class TForm2: public TForm

{

__published:// IDE-managed Components

TMainMenu *MainMenu1;

TMenuItem *N1;

TMenuItem *N2;

TMenuItem *N3;

TMenuItem *N4;

TSpeedButton *SpeedButton1;

TTreeView *TreeView1;

TMemo *Memo1;

TMenuItem *N5;

TMenuItem *N6;

TFontDialog *FontDialog1;

TSpeedButton *SpeedButton2;

TSpeedButton *SpeedButton3;

TFindDialog *FindDialog1;

TMenuItem *N7;

TMenuItem *N9;

TSpeedButton *SpeedButton4;

TSaveDialog *SaveDialog1;

void __fastcall SpeedButton1Click (TObject *Sender);

void __fastcall TreeView1DblClick (TObject *Sender);

void __fastcall FormClose (TObject *Sender, TCloseAction &Action);

void __fastcall N6Click (TObject *Sender);

void __fastcall SpeedButton3Click (TObject *Sender);

void __fastcall SpeedButton2Click (TObject *Sender);

void __fastcall TreeView1KeyDown (TObject *Sender, WORD &Key,

TShiftState Shift);

void __fastcall Memo1KeyDown (TObject *Sender, WORD &Key,

TShiftState Shift);

void __fastcall N4Click (TObject *Sender);

void __fastcall N3Click (TObject *Sender);

void __fastcall N7Click (TObject *Sender);

void __fastcall FindDialog1Find (TObject *Sender);

void __fastcall N9Click (TObject *Sender);

void __fastcall SpeedButton4Click (TObject *Sender);

private:// User declarations

public:// User declarations

__fastcall TForm2(TComponent* Owner);

};

//—————————————————————————————————————;

extern PACKAGE TForm2 *Form2;

//—————————————————————————————————————;

#endif

// Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Unit3. H Ρ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ класса Ρ„ΠΎΡ€ΠΌΡ‹ Form3

//—————————————————————————————————————;

#ifndef Unit3H

#define Unit3H

//—————————————————————————————————————;

#include

#include

#include

#include

#include

#include

#include

//—————————————————————————————————————;

class TForm3: public TForm

{

__published:// IDE-managed Components

TSpeedButton *SpeedButton1;

TLabel *Label1;

TLabel *Label2;

TLabel *Label3;

TLabel *Label4;

void __fastcall SpeedButton1Click (TObject *Sender);

private:// User declarations

public:// User declarations

__fastcall TForm3(TComponent* Owner);

};

//—————————————————————————————————————;

extern PACKAGE TForm3 *Form3;

//—————————————————————————————————————;

#endif

// Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Unit4. H Ρ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ класса Ρ„ΠΎΡ€ΠΌΡ‹ Form4

//—————————————————————————————————————;

#ifndef Unit4H

#define Unit4H

//—————————————————————————————————————;

#include

#include

#include

#include

#include

#include

#include

//—————————————————————————————————————;

class TForm4: public TForm

{

__published:// IDE-managed Components

TSpeedButton *SpeedButton1;

TLabel *Label1;

TLabel *Label2;

TLabel *Label3;

TLabel *Label4;

TLabel *Label5;

void __fastcall SpeedButton1Click (TObject *Sender);

private:// User declarations

public:// User declarations

__fastcall TForm4(TComponent* Owner);

};

//—————————————————————————————————————;

extern PACKAGE TForm4 *Form4;

//—————————————————————————————————————;

#endif

// Π€Π°ΠΉΠ» Unit1. cpp для Ρ„ΠΎΡ€ΠΌΡ‹ Form1

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

#include «Unit2.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

int c, c1;

bool fl, fl2;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm1: SpeedButton1Click (TObject *Sender)

{

Form2->Visible=true;

Form1->Visible=false;

}

//—————————————————————————————————————;

void __fastcall TForm1: SpeedButton2Click (TObject *Sender)

{

Application->Terminate ();

}

//—————————————————————————————————————;

void __fastcall TForm1: SpeedButton1MouseMove (TObject *Sender,

TShiftState Shift, int X, int Y)

{

fl=true;

}

//—————————————————————————————————————;

void __fastcall TForm1: FormMouseMove (TObject *Sender, TShiftState Shift,

int X, int Y)

{

fl=false;

}

//—————————————————————————————————————;

void __fastcall TForm1: SpeedButton2MouseMove (TObject *Sender,

TShiftState Shift, int X, int Y)

{

Form1->Repaint ();

}

//—————————————————————————————————————;

// Π€Π°ΠΉΠ» Unit2. cpp для Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Form2

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit2.h»

#include «Unit1.h»

#include «Unit3.h»

#include «Unit4.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm2 *Form2;

int i=0;

bool fg1, fg2;

int v1, v2,c2;

int SelPos;

AnsiString a;

//—————————————————————————————————————;

__fastcall TForm2: TForm2(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm2: SpeedButton1Click (TObject *Sender)

{

Application->Terminate ();

}

//—————————————————————————————————————;

void __fastcall TForm2: TreeView1DblClick (TObject *Sender)

{

if (Form2->TreeView1->Selected->AbsoluteIndex==1)

{Form2->Memo1->Lines->LoadFromFile («pages/1.dat»);

a=Form2->Memo1->Lines->Text;

};

if (Form2->TreeView1->Selected->AbsoluteIndex==2)

{Form2->Memo1->Lines->LoadFromFile («pages/2.dat»);

a=Form2->Memo1->Lines->Text;

};

if (Form2->TreeView1->Selected->AbsoluteIndex==3)

{Form2->Memo1->Lines->LoadFromFile («pages/3.dat»);

a=Form2->Memo1->Lines->Text;

};

if (Form2->TreeView1->Selected->AbsoluteIndex==4)

{Form2->Memo1->Lines->LoadFromFile («pages/4.dat»);

a=Form2->Memo1->Lines->Text;

};

if (Form2->TreeView1->Selected->AbsoluteIndex==5)

{Form2->Memo1->Lines->LoadFromFile («pages/5.dat»);

a=Form2->Memo1->Lines->Text;

};

if (Form2->TreeView1->Selected->AbsoluteIndex==6)

{Form2->Memo1->Lines->LoadFromFile («pages/6.dat»);

a=Form2->Memo1->Lines->Text;

};

if (Form2->TreeView1->Selected->AbsoluteIndex==7)

{Form2->Memo1->Lines->LoadFromFile («pages/7.dat»);

a=Form2->Memo1->Lines->Text;

};

if (Form2->TreeView1->Selected->AbsoluteIndex==8)

{Form2->Memo1->Lines->LoadFromFile («pages/8.dat»);

a=Form2->Memo1->Lines->Text;

};

if (Form2->TreeView1->Selected->AbsoluteIndex==9)

{Form2->Memo1->Lines->LoadFromFile («pages/9.dat»);

a=Form2->Memo1->Lines->Text;

};

if (Form2->TreeView1->Selected->AbsoluteIndex==10)

{Form2->Memo1->Lines->LoadFromFile («pages/10.dat»);

a=Form2->Memo1->Lines->Text;

};

}

//—————————————————————————————————————;

void __fastcall TForm2: FormClose (TObject *Sender, TCloseAction &Action)

{

Application->Terminate ();

//—————————————————————————————————————;

void __fastcall TForm2: N6Click (TObject *Sender)

{ if (FontDialog1->Execute ())

{Form2->Memo1->Font=Form2->FontDialog1->Font;

Form2->TreeView1->Font=Form2->FontDialog1->Font;

}

}

//—————————————————————————————————————;

void __fastcall TForm2: SpeedButton3Click (TObject *Sender)

{

int z=Form2->TreeView1->Items->Owner->Selected->SelectedIndex;

if (zTreeView1->Items->Count-1){

Form2->TreeView1->Items->Item[z+1]->Selected=true;

Form2->TreeView1->OnDblClick (Sender); }

}

//—————————————————————————————————————;

void __fastcall TForm2: SpeedButton2Click (TObject *Sender)

{

int z=Form2->TreeView1->Items->Owner->Selected->SelectedIndex;

if (z>0){

Form2->TreeView1->Items->Item[z-1]->Selected=true;

Form2->TreeView1->OnDblClick (Sender);}

}

//—————————————————————————————————————;

void __fastcall TForm2: TreeView1KeyDown (TObject *Sender, WORD &Key,

TShiftState Shift)

{

if (Key==VK_RETURN){Form2->SpeedButton3->OnClick (Sender);}

}

//—————————————————————————————————————;

void __fastcall TForm2: Memo1KeyDown (TObject *Sender, WORD &Key,

TShiftState Shift)

{

if (Key==VK_RETURN){Form2->SpeedButton3->OnClick (Sender);}

}

//—————————————————————————————————————;

void __fastcall TForm2: N4Click (TObject *Sender)

{

Form3->Visible=true;

}

//—————————————————————————————————————;

void __fastcall TForm2: N3Click (TObject *Sender)

{

Form4->Visible=true;

}

//—————————————————————————————————————;

void __fastcall TForm2: N7Click (TObject *Sender)

{

Form2->FindDialog1->Execute ();

}

//—————————————————————————————————————;

void __fastcall TForm2: FindDialog1Find (TObject *Sender)

{AnsiString d;

for (i=0;iFindDialog1->FindTextA.Length ();i++)

{d=d+i;}

if (Form2->FindDialog1->Options.Contains (frFindNext)) {

SelPos=a.Pos (Form2->FindDialog1->FindTextA);

if (SelPos>0){

Memo1->SelStart=SelPos-1;

Memo1->SelLength=Form2->FindDialog1->FindTextA.Length ();

a.Delete (SelPos, Form2->FindDialog1->FindTextA.Length ());

a.Insert (d, SelPos);

}

else {

ShowMessage («Π’Скст '» +Form2->FindDialog1->FindTextA+" ' Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½");

a=Form2->Memo1->Lines->Text;}

Form2->SetFocus ();

Form2->Memo1->SetFocus ();}

}

//—————————————————————————————————————;

void __fastcall TForm2: N9Click (TObject *Sender)

{

if (Form2->N9->Checked) {

Form2->N9->Checked=false;

Form2->SpeedButton1->ShowHint=false;

Form2->SpeedButton2->ShowHint=false;

Form2->SpeedButton3->ShowHint=false;

Form2->TreeView1->ShowHint=false;

}

else {Form2->N9->Checked=true;

Form2->SpeedButton1->ShowHint=true;

Form2->SpeedButton2->ShowHint=true;

Form2->SpeedButton3->ShowHint=true;

Form2->TreeView1->ShowHint=true;

}

}

//—————————————————————————————————————;

void __fastcall TForm2: SpeedButton4Click (TObject *Sender)

{

if (SaveDialog1->Execute ()) {

Memo1->Lines->SaveToFile (SaveDialog1->FileName);

}

ChDir (ExtractFilePath (Application->ExeName));

}

//—————————————————————————————————————;

// Π€Π°ΠΉΠ» Unit3. cpp для Ρ„ΠΎΡ€ΠΌΡ‹ Form3

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit3.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm3 *Form3;

int c3;

//—————————————————————————————————————;

__fastcall TForm3: TForm3(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm3: SpeedButton1Click (TObject *Sender)

{

Form3->Close ();

}

//—————————————————————————————————————-//

Π€Π°ΠΉΠ» Unit4. cpp для Ρ„ΠΎΡ€ΠΌΡ‹ Form4

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit4.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm4 *Form4;

int c4;

//—————————————————————————————————————;

__fastcall TForm4: TForm4(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm4: SpeedButton1Click (TObject *Sender)

{

Form4->Close ();

}

//—————————————————————————————————————;

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π‘ Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² использования

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