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

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°

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

Value = + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) + + CHR (13) +,; Π€ΠΎΡ€ΠΌΠ° DemoAudio. scx (см. Ρ€ΠΈΡ.1) ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚ ΠΌΡƒΠ·Ρ‹ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π’Ρ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Ρƒ ΡΠ΅Π±Ρ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. Класс vfpmci. vcx (см. Ρ€ΠΈΡ.7) ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для воспроизвСдСния Π·Π²ΡƒΠΊΠ° ΠΈ Π²ΠΈΠ΄Π΅ΠΎ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. Π€ΠΎΡ€ΠΌΠ° DemoVideo. scx… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

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

ΠšΠ£Π Π‘ΠžΠ’ΠΠ― Π ΠΠ‘ΠžΠ’Π

ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ «Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°»

  • Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅
    • 1. ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ΠΈ
  • 1.1 НазначСниС прилоТСния
  • 1.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„ΠΎΡ€ΠΌ
    • 2. МСню прилоТСния
  • 2.1 МСню для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ
  • 2.2 МСню для администраторов
    • 3. ОписаниС Ρ„ΠΎΡ€ΠΌ
  • 3.1 Π€ΠΎΡ€ΠΌΠ° DemoAudio. scx
  • 3.2 Π€ΠΎΡ€ΠΌΠ° DemoVideo. scx
  • 3.3 Π€ΠΎΡ€ΠΌΠ° o_programme.scx
  • 3.4 Π€ΠΎΡ€ΠΌΠ° registr. scx
  • 3.5 Π€ΠΎΡ€ΠΌΠ° spravka. scx
  • 3.6 Π€ΠΎΡ€ΠΌΠ° vxod. scx
  • 3.7 Класс vfpmci. vcx
    • 4. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
    • Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅
    • Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ„ΠΎΡ€ΠΌΠ° Ρ„Π°ΠΉΠ»

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ Π±Ρ‹Π»ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½Ρ‹ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, Π½ΠΎ ΠΌΡ‹ Π½Π°Ρ‡Π°Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅Π΄Π°Π²Π½ΠΎ. ВСхничСский прогрСсс постоянно развиваСтся. Π›ΡŽΠ΄ΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ стал Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ нашСй повсСднСвной ΠΆΠΈΠ·Π½ΠΈ. МногиС люди ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π΅, Π² ΡˆΠΊΠΎΠ»Π΅ ΠΈ Π΄ΠΎΠΌΠ°, Π½ΠΎ ΠΌΡ‹ Π΅Ρ‰Π΅ Π½Π΅ ΠΎΡΠΎΠ·Π½Π°Π»ΠΈ всС прСимущСства ΠΈ Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΠΊΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π½Π°ΠΌ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Π½Π°ΡˆΡƒ Тизнь. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΊΡƒΠΏΠΈΡ‚ΡŒ ΠΎΠ΄Π΅ΠΆΠ΄Ρƒ, Π΅Π΄Ρƒ ΠΈ Π΄Π°ΠΆΠ΅ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ. Π­Ρ‚ΠΎ устройство Π·Π°ΠΌΠ΅Π½ΠΈΠ»ΠΎ ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ, ΠΊΠΈΠ½ΠΎ ΠΈ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»ΡŒ. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρ‹ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΈΠ»ΠΈ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½Π°ΡƒΡ‡Π½ΠΎΠΉ сфСрС. Они ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ Ρ„ΠΈΠ·ΠΈΠΊΡƒ, Ρ…ΠΈΠΌΠΈΡŽ, биологию, ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΡƒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ области Π½Π°ΡƒΠΊΠΈ.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ я Ρ€Π΅ΡˆΠΈΠ» ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, благодаря ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΠ»Π°Π±ΠΈΡ‚ΡŒΡΡ сидя Π·Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ. Π’ ΡΡ‚ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»ΡƒΡˆΠ°Ρ‚ΡŒ Π»ΡŽΠ±ΠΈΠΌΡƒΡŽ ΠΌΡƒΠ·Ρ‹ΠΊΡƒ ΠΈ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π»ΡŽΠ±ΠΈΠΌΡ‹Π΅ Ρ„ΠΈΠ»ΡŒΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ находятся Ρƒ Π’ас Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. ИмСнно поэтому я Π½Π°Π·Π²Π°Π» Π΅Π΅ «ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°».

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

1.1. НазначСниС прилоТСния

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π°ΡƒΠ΄ΠΈΠΎΠΈ Π²ΠΈΠ΄Π΅ΠΎ проигрыватСля

1.2. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„ΠΎΡ€ΠΌ

Π’ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ нСсколько Ρ„ΠΎΡ€ΠΌ. Π’ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ с ΠΈΡ… ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ:

Π€ΠΎΡ€ΠΌΠ°

ВыполняСмая функция

DemoAudio.scx

Π€ΠΎΡ€ΠΌΠ° для проигрывания Π°ΡƒΠ΄ΠΈΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²

DemoVideo.scx

Π€ΠΎΡ€ΠΌΠ° для проигрывания Π²ΠΈΠ΄Π΅ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²

o_programme.scx

Π€ΠΎΡ€ΠΌΠ°, содСрТащая Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅

registr.scx

Π€ΠΎΡ€ΠΌΠ° для рСгистрации, измСнСния ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

spravka.scx

Π€ΠΎΡ€ΠΌΠ° для справки

vfpmci.vcx

Π€ΠΎΡ€ΠΌΠ° класса

vxod.scx

Π€ΠΎΡ€ΠΌΠ° Π²Ρ…ΠΎΠ΄Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ

2. МСню прилоТСния

2.1. МСню для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

SET SYSMENU TO

SET SYSMENU AUTOMATIC

DEFINE PAD _3tg14hdbk OF _MSYSMENU PROMPT «ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°» COLOR SCHEME 3

DEFINE PAD _3tg14hdbl OF _MSYSMENU PROMPT «Π‘Срвис» COLOR SCHEME 3

DEFINE PAD _3tg14hdbm OF _MSYSMENU PROMPT «Π’Ρ‹Ρ…ΠΎΠ΄» COLOR SCHEME 3

ON PAD _3tg14hdbk OF _MSYSMENU ACTIVATE POPUP ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ

ON PAD _3tg14hdbl OF _MSYSMENU ACTIVATE POPUP сСрвис

ON SELECTION PAD _3tg14hdbm OF _MSYSMENU Quit

DEFINE POPUP ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ MARGIN RELATIVE SHADOW COLOR SCHEME 4

DEFINE BAR 1 OF ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ PROMPT «ΠΡƒΠ΄ΠΈΠΎ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»ΡŒ»

DEFINE BAR 2 OF ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ PROMPT «Π’ΠΈΠ΄Π΅ΠΎ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»ΡŒ»

ON SELECTION BAR 1 OF ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ Do form sys (5)+" KursovayaProgrammdemoaudio. scx"

ON SELECTION BAR 2 OF ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ Do form sys (5)+" KursovayaProgrammdemovideo. scx"

DEFINE POPUP сСрвис MARGIN RELATIVE SHADOW COLOR SCHEME 4

DEFINE BAR 1 OF ΡΠ΅Ρ€Π²ΠΈΡ PROMPT «Π‘ΠΏΡ€Π°Π²ΠΊΠ°»

DEFINE BAR 2 OF ΡΠ΅Ρ€Π²ΠΈΡ PROMPT «Πž ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅»

ON SELECTION BAR 1 OF ΡΠ΅Ρ€Π²ΠΈΡ do form sys (5)+" KursovayaProgrammspravka. scx"

ON SELECTION BAR 2 OF ΡΠ΅Ρ€Π²ΠΈΡ do form sys (5)+" KursovayaProgrammo_programme.scx"

2.2 МСню для администраторов

Π£ ΠΌΠ΅Π½ΡŽ администраторов появляСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ «ADMIN», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ администраторы ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

SET SYSMENU TO

SET SYSMENU AUTOMATIC

DEFINE PAD _3tg14g2at OF _MSYSMENU PROMPT «ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°» COLOR SCHEME 3

DEFINE PAD _3tg14g2au OF _MSYSMENU PROMPT «Π‘Срвис» COLOR SCHEME 3

DEFINE PAD _3tg14g2av OF _MSYSMENU PROMPT «Admin» COLOR SCHEME 3

DEFINE PAD _3tg14g2aw OF _MSYSMENU PROMPT «Π’Ρ‹Ρ…ΠΎΠ΄» COLOR SCHEME 3

ON PAD _3tg14g2at OF _MSYSMENU ACTIVATE POPUP ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ

ON PAD _3tg14g2au OF _MSYSMENU ACTIVATE POPUP сСрвис

ON PAD _3tg14g2av OF _MSYSMENU ACTIVATE POPUP admin

ON SELECTION PAD _3tg14g2aw OF _MSYSMENU Quit

DEFINE POPUP ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ MARGIN RELATIVE SHADOW COLOR SCHEME 4

DEFINE BAR 1 OF ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ PROMPT «ΠΡƒΠ΄ΠΈΠΎ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»ΡŒ»

DEFINE BAR 2 OF ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ PROMPT «Π’ΠΈΠ΄Π΅ΠΎ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»ΡŒ»

ON SELECTION BAR 1 OF ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ Do form Sys (5)+" KursovayaProgrammdemoaudio. scx"

ON SELECTION BAR 2 OF ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈ Do form Sys (5)+" KursovayaProgrammdemovideo. scx"

DEFINE POPUP сСрвис MARGIN RELATIVE SHADOW COLOR SCHEME 4

DEFINE BAR 1 OF ΡΠ΅Ρ€Π²ΠΈΡ PROMPT «Π‘ΠΏΡ€Π°Π²ΠΊΠ°»

DEFINE BAR 2 OF ΡΠ΅Ρ€Π²ΠΈΡ PROMPT «Πž ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅»

ON SELECTION BAR 1 OF ΡΠ΅Ρ€Π²ΠΈΡ do form sys (5)+" KursovayaProgrammspravka. scx"

ON SELECTION BAR 2 OF ΡΠ΅Ρ€Π²ΠΈΡ do form sys (5)+" KursovayaProgrammo_programme.scx"

DEFINE POPUP admin MARGIN RELATIVE SHADOW COLOR SCHEME 4

DEFINE BAR 1 OF admin PROMPT «ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ»

ON SELECTION BAR 1 OF admin Do form sys (5)+" KursovayaProgrammregistr. scx"

3. ОписаниС Ρ„ΠΎΡ€ΠΌ

3.1 Π€ΠΎΡ€ΠΌΠ° DemoAudio. scx

Π€ΠΎΡ€ΠΌΠ° DemoAudio.scx (см. Ρ€ΠΈΡ.1) ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚ ΠΌΡƒΠ·Ρ‹ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π’Ρ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Ρƒ ΡΠ΅Π±Ρ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅.

Рис.1

DEFINE CLASS vfpplayer AS container

PROCEDURE Init

this.oMedia = CREATEOBJECT («vfpmci»)

IF VARTYPE (this.oMedia) ≠ «O»

RETURN .f.

ENDIF

ENDPROC

PROCEDURE interval. MouseDown

*** ActiveX Control Event ***

LPARAMETERS button, shift, x, y

this.Parent.Timer1.Enabled = .f.

ENDPROC

PROCEDURE interval. MouseUp

*** ActiveX Control Event ***

LPARAMETERS button, shift, x, y

this.Parent.Timer1.Enabled = .t.

ENDPROC

PROCEDURE interval. Change

*** ActiveX Control Event ***

WITH this.Parent.oMedia

SetPosition (this.value)

Play ()

ENDWITH

ENDPROC

PROCEDURE volume. Scroll

*** ActiveX Control Event ***

this.Parent.oMedia.SetVolume (this.value)

ENDPROC

PROCEDURE cmdopen. Click

LOCAL lcFile

lcFile = GETFILE («MP3|WMA|WAV»)

IF !EMPTY (lcFile)

WITH this. Parent

oMedia.Open (lcFile, thisform. HWnd)

oMedia.SetVolume (750)

Interval.value = 0

Interval.max = .oMedia.GetSize ()

oMedia.Play ()

Timer1.Enabled = .t.

ENDWITH

ENDIF

ENDPROC

PROCEDURE cmdplay. Click

WITH this. Parent

.oMedia.Play ()

.Timer1.Enabled = .t.

ENDWITH

ENDPROC

PROCEDURE cmdpause. Click

WITH this. Parent

.oMedia.Pause ()

.Timer1.Enabled = .f.

ENDWITH

ENDPROC

PROCEDURE cmdstop. Click

WITH this. Parent

.oMedia.Stop ()

.Timer1.Enabled = .f.

.Interval.value = 0

ENDWITH

ENDPROC

PROCEDURE timer1. Timer

this.Parent.interval.value = this.Parent.oMedia.GetPosition ()

ENDPROC

ENDDEFINE

3.2 Π€ΠΎΡ€ΠΌΠ° DemoVideo. scx

Π€ΠΎΡ€ΠΌΠ° DemoVideo.scx (см. Ρ€ΠΈΡ.2) ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π²ΠΈΠ΄Π΅ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π’Ρ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Ρƒ ΡΠ΅Π±Ρ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅.

Рис. 2

DEFINE CLASS video AS form

PROCEDURE vfpplayer1.cmdOpen.Click

LOCAL lcFile, lnDestWidth, lnDestHeight

lcFile = GETFILE ('AVI, WMV')

IF !EMPTY (lcFile)

WITH this. Parent

.oMedia.Open (lcFile, thisform. HWnd)

.oMedia.SetVolume (750)

.Interval.value = 0

.Interval.max = .oMedia.GetSize ()

* ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Π²ΠΈΠ΄Π΅ ΠΊΠ°Π΄Ρ€Π°

lnDestWidth = 0

lnDestHeight = 0

.oMedia.GetVideoDimension (@lnDestWidth, @lnDestHeight)

* ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ фактичСских Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² области Π²Ρ‹Π²ΠΎΠ΄Π° Π²ΠΈΠ΄Π΅ΠΎ

lnKVert = lnDestHeight / thisform. Shape1.Height

lnKHor = lnDestWidth / thisform. Shape1.Width

lnKoeff = MAX (lnKVert, lnKHor)

IF lnKoeff < 1

lnKoeff = 1

ENDIF

lnWidth = lnDestWidth / lnKoeff

lnHeight = lnDestHeight / lnKoeff

* ВычисляСм Π½ΠΎΠ²Ρ‹Π΅ значСния ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ Π»Π΅Π²ΠΎΠΉ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ

lnTop = thisform. Shape1. Top + 0.5 * (thisform.Shape1.Height — lnHeight)

lnLeft = thisform. Shape1. Left + 0.5 * (thisform.Shape1.Width — lnWidth)

* УстанавливаСм Π½ΠΎΠ²Ρ‹Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΎΠΊΠ½Π° для Π²ΠΈΠ΄Π΅ΠΎ

.oMedia.SetVideoRect (lnLeft, lnTop, lnWidth, lnHeight)

.oMedia.Play ()

.Timer1.Enabled = .t.

ENDWITH

ENDIF

ENDPROC

ENDDEFINE

3.3 Π€ΠΎΡ€ΠΌΠ° o_programme.scx

Π€ΠΎΡ€ΠΌΠ° o_programme.scx (см. Ρ€ΠΈΡ.3) ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

Рис.3

DEFINE CLASS form1 AS form

Top = 0

Left = 0

Height = 373

Width = 600

DoCreate = .T.

Caption = «Πž ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅»

BackColor = RGB (240,240,240)

Name = «Form1»

ADD OBJECT label1 AS label WITH ;

AutoSize = .T., ;

FontBold = .T., ;

FontSize = 16, ;

FontCharSet = 204, ;

Alignment = 0, ;

BackStyle = 0, ;

Caption = «Πž ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅:», ;

Height = 27, ;

Left = 24, ;

Top = 12, ;

Width = 146, ;

Name = «Label1»

ADD OBJECT command1 AS commandbutton WITH ;

Top = 336, ;

Left = 504, ;

Height = 27, ;

Width = 84, ;

Caption = «Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ», ;

Name = «Command1»

ADD OBJECT edit1 AS editbox WITH ;

Comment = «», ;

BackStyle = 1, ;

BorderStyle = 0, ;

Height = 276, ;

Left = 24, ;

ReadOnly = .T., ;

Top = 48, ;

Width = 564, ;

BackColor = RGB (240,240,240), ;

DisabledBackColor = RGB (240,240,240), ;

DisabledForeColor = RGB (255,255,255), ;

BorderColor = RGB (255,255,255), ;

Value = [ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° создана ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ «Visual Foxpro 9 — КлСпинин ΠΈ ΠΠ³Π°Ρ„ΠΎΠ½ΠΎΠ²Π°» .] + CHR (13) + [Π’ этой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π’Ρ‹ ΡΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ»ΡƒΡˆΠ°Ρ‚ΡŒ ΠΌΡƒΠ·Ρ‹ΠΊΡƒ ΠΈ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΈΠ΄Π΅ΠΎ. ] + CHR (13) + [Π­Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π½Π°Π²Ρ‹ΠΊΠΎΠ² ΠΈ ΡƒΠΌΠ΅Π½ΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°Ρ€Π΅Π³Π΅ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Π½Π°ΡΠ»Π°ΠΆΠ΄Π°Ρ‚ΡŒΡΡ Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΌΠΈ ΠΌΡƒΠ·Ρ‹ΠΊΠΎΠΉ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ, находящихся Ρƒ Π’ас Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅.], ;

ControlSource = «», ;

RightToLeft = .F., ;

Name = «Edit1»

PROCEDURE command1. Click

thisform.Release ()

ENDPROC

ENDDEFINE

3.4 Π€ΠΎΡ€ΠΌΠ° registr. scx

Π’ Ρ„ΠΎΡ€ΠΌΠ΅ registr.scx (см. Ρ€ΠΈΡ.4) ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ.

Рис. 4

DEFINE CLASS form1 AS form

PROCEDURE Load

SET DELETE off

F1=SYS (5)

IF NOT USED ('rega')

USE F1+" Kursovayadbfsrega. dbf" exclusive IN 0

ELSE

SELECT rega

ENDIF

PUBLIC c

ENDPROC

PROCEDURE cmdsave. Click

F1=SYS (5)

IF NOT USED ('rega')

USE F1+" Kursovayadbfsrega. dbf" exclusive IN 0

ELSE

SELECT rega

ENDIF

IF c=2

APPEND BLANK

ENDIF

a1=thisform.pageframe1.Pagedit.text2.value

replace Login WITH thisform. pageframe1.pagedit.text1.Value

replace Pass WITH thisform. pageframe1.pagedit.text2.Value

replace adm WITH thisform. pageframe1.pagedit.text3.Value

c=0

thisform.pageframe1.pagedit.Enabled=.F.

thisform.pageframe1.paglist.Enabled=.T.

thisform.pageframe1.ActivePage=1

thisform.CmdAppendblank.Enabled=.T.

thisform.CmdEditblank.Enabled=.T.

thisform.CmdDelblank.Enabled=.T.

ENDPROC

PROCEDURE cmdcansel. Click

thisform.CmdAppendblank.Enabled=.T.

thisform.CmdEditblank.Enabled=.T.

thisform.CmdDelblank.Enabled=.T.

thisform.pageframe1.pagedit.Enabled=.F.

thisform.pageframe1.paglist.Enabled=.T.

thisform.pageframe1.ActivePage=1

c=0

ENDPROC

PROCEDURE cmdappendblank. Click

c=2

thisform.CmdAppendblank.Enabled=.F.

thisform.CmdEditblank.Enabled=.F.

thisform.CmdDelblank.Enabled=.F.

thisform.pageframe1.pagedit.Enabled=.T.

thisform.pageframe1.paglist.Enabled=.F.

thisform.pageframe1.ActivePage=2

thisform.pageframe1.pagedit.text1.Value=""

thisform.pageframe1.pagedit.text2.Value=0

thisform.pageframe1.pagedit.text3.Value=0

ENDPROC

PROCEDURE cmdeditblank. Click

c=1

thisform.CmdAppendblank.Enabled=.F.

thisform.CmdEditBlank.Enabled=.F.

thisform.CmdDelblank.Enabled=.F.

thisform.pageframe1.paglist.Enabled=.F.

thisform.pageframe1.pagedit.Enabled=.T.

thisform.pageframe1.ActivePage=2

thisform.pageframe1.pagedit.text1.Value=rega.login

thisform.pageframe1.pagedit.text2.Value=rega.pass

thisform.pageframe1.pagedit.text3.Value=rega.adm

ENDPROC

PROCEDURE cmddelblank. Click

SET DELETE on

Local nRetMsgBox, nRecno

nRetMsgBox=0

nRecno=0

nRetMsgBox=MESSAGEBOX («ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ запись?», 4+32+256," ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅")

IF nRetMsgBox=6

DELETE

IF !EOF ()

SKIP

ENDIF

IF EOF ()

GO BOTTOM

ENDIF

IF EOF ()

GO TOP

ENDIF

NDIF

THISFORM.REFRESH ()

ENDPROC

PROCEDURE cmdexit. Click

IF USED ([regs])

SELECT rega

USE

ENDIF

thisform.Release ()

ENDPROC

ENDDEFINE

3.5 Π€ΠΎΡ€ΠΌΠ° spravka. scx

Π€ΠΎΡ€ΠΌΠ° spravka.scx (см. Ρ€ΠΈΡ.5) Π²Ρ‹Π΄Π°Π΅Ρ‚ справку ΠΏΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΡŽ всСго прилоТСния.

Рис. 5

DEFINE CLASS form1 AS form

Top = 2

Left = 24

Height = 371

Width = 612

DoCreate = .T.

Caption = «Π‘ΠΏΡ€Π°Π²ΠΊΠ°»

Name = «Form1»

ADD OBJECT command1 AS commandbutton WITH ;

Top = 336, ;

Left = 504, ;

Height = 27, ;

Width = 96, ;

Caption = «Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ», ;

Name = «Command1»

ADD OBJECT edit1 AS editbox WITH ;

BackStyle = 1, ;

BorderStyle = 0, ;

Height = 276, ;

Left = 24, ;

ReadOnly = .T., ;

Top = 48, ;

Width = 576, ;

BackColor = RGB (240,240,240), ;

Value = [Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡΠ»ΡƒΡˆΠ°Ρ‚ΡŒ ΠΌΡƒΠ·Ρ‹ΠΊΡƒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ: 1) Π’ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ контСкстном мСню Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ строчку «ΠœΠ£Π›Π¬Π’Π˜ΠœΠ•Π”Π˜Π» ] + CHR (13) + [2) Π”Π°Π»Π΅Π΅ Π² ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠ΅ΠΌΡΡ мСню Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ строчку «ΠΠ£Π”Π˜Πž ΠŸΠ ΠžΠ˜Π“Π Π«Π’ΠΠ’Π•Π›Π¬» ] + CHR (13) + [3) Π—Π°Ρ‚Π΅ΠΌ Π² ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠ΅ΠΉΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠžΠ’КРЫВЬ» ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹ΠΉ Π’Π°ΠΌ Ρ„Π°ΠΉΠ».] + CHR (13) + [Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΈΠ΄Π΅ΠΎ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ:] + CHR (13) + [1) Π’ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ контСкстном мСню Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ строчку «ΠœΠ£Π›Π¬Π’Π˜ΠœΠ•Π”Π˜Π» ] + CHR (13) + [2) Π”Π°Π»Π΅Π΅ Π² ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠ΅ΠΌΡΡ мСню Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ строчку «Π’Π˜Π”Π•Πž ΠŸΠ ΠžΠ˜Π“Π Π«Π’ΠΠ’Π•Π›Π¬» ] + CHR (13) + [3) Π—Π°Ρ‚Π΅ΠΌ Π² ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠ΅ΠΉΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠžΠ’КРЫВЬ» ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹ΠΉ Π’Π°ΠΌ Ρ„Π°ΠΉΠ».] + CHR (13) + [Если Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΅Ρ‰Π΅ Ρ€Π°Π· ΠΈΠ»ΠΈ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ·Π΅ΠΉ, Π·Π½Π°ΠΊΠΎΠΌΡ‹Ρ… ΠΈΠ»ΠΈ Ρ€ΠΎΠ΄Π½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Ρ‰Π°ΠΉΡ‚Π΅ΡΡŒ ΠΊ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€Π°Ρ‚ΠΎΡ€Ρƒ.] + CHR (13) + [***Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Π΅ΠΉ), Π½ΡƒΠΆΠ½ΠΎ:] + CHR (13) + [1) Π’ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ контСкстном мСню Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ строчку «ADMIN» ] + CHR (13) + [2) Π’ ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠ΅ΠΌΡΡ мСню Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ строчку «ΠŸΠžΠ›Π¬Π—ΠžΠ’ΠΠ’Π•Π›Π˜» ] + CHR (13) + [3) Π—Π°Ρ‚Π΅ΠΌ Π² ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Π΅ΠΉ)] + CHR (13) + [***ДСйствиС доступно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для администратора] + CHR (13) + [Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ:] + CHR (13) + [Π’ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ контСкстном мСню Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΡΡ‚Ρ€ΠΎΡ‡ΠΊΡƒ «Π’Π«Π₯ΠžΠ”» ], ;

ControlSource = «», ;

Name = «Edit1»

ADD OBJECT label1 AS label WITH ;

AutoSize = .T., ;

FontBold = .T., ;

FontSize = 16, ;

FontCharSet = 204, ;

BackStyle = 0, ;

BorderStyle = 0, ;

Caption = «Π‘ΠΏΡ€Π°Π²ΠΊΠ°», ;

Height = 27, ;

Left = 24, ;

Top = 12, ;

Width = 91, ;

ColorScheme = 1, ;

Name = «Label1»

PROCEDURE Load

ENDPROC

PROCEDURE command1. Click

thisform.release ()

ENDPROC

ENDDEFINE

3.6 Π€ΠΎΡ€ΠΌΠ° vxod. scx

Π€ΠΎΡ€ΠΌΠ° vxod.scx (см. Ρ€ΠΈΡ.6) опрСдСляСт ΠΊΠ΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ вновь вошСдший ΠΈ Π²Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ΅ΠΌ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ (администратор ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ) ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ мСню.

Рис. 6

DEFINE CLASS formset AS formset

PROCEDURE form1. Load

F2=SYS (5)

IF NOT USED ([Rega])

USE F2+" Kursovayadbfsrega. dbf" exclusive IN 0

SELECT rega

ELSE

SELECT rega

ENDIF

INDEX on login + STR (pass) To loginidx

SET ORDER TO loginidx

ENDPROC

PROCEDURE form1. Unload

IF USED ([rega])

SELECT rega

USE

ENDIF

ENDPROC

PROCEDURE command1. Click

F1=SYS (5)

* Π’Π²ΠΎΠ΄ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

Log1=ALLTRIM (thisform.Text1.value)

Parol=ALLTRIM (thisform.text2.value)

* ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π²Π΅Ρ€Π½ΠΎΡΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° администратор ΠΈΠ»ΠΈ простой ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ

IF SEEK (Log1," rega")

IF VAL (Parol)<>rega.pass

WAIT WINDOW ('Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ!') AT 15, 73 NOWAIT

ELSE

thisform.Release ()

IF rega. adm=0

WAIT WINDOW ('Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ!') AT 15, 73 NOWAIT

DO F1+" KursovayaProgrammpolmen. prg"

thisform.Release ()

ENDIF

IF rega. adm=1

WAIT WINDOW ('Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ, администратор!') AT 15, 73 NOWAIT

DO F1+" KursovayaProgrammadmmen. prg"

thisform.Release ()

ENDIF

ENDIF

ELSE

WAIT WINDOW ('Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½! ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€Π°Ρ‚ΠΎΡ€Ρƒ.') AT 15, 73 NOWAIT

ENDIF

ENDPROC

PROCEDURE command2. Click

thisform.Release ()

ENDPROC

ENDDEFINE

3.7 Класс vfpmci. vcx

Класс vfpmci.vcx (см. Ρ€ΠΈΡ.7) ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для воспроизвСдСния Π·Π²ΡƒΠΊΠ° ΠΈ Π²ΠΈΠ΄Π΅ΠΎ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

Рис. 7

DEFINE CLASS vfpmci AS custom

PROTECTED status

status = 0

PROTECTED lload

lload = .F.

Name = «vfpmci»

PROCEDURE docmd

LPARAMETERS tcMCICommand

LOCAL lcRetMsg

lcRetMsg = SPACE (80)

this.Status = mciSendString (tcMCICommand, @lcRetMsg, 80, 0)

IF this. Status ≠ 0

lcRetMsg = SPACE (160)

= mciGetErrorString (this.Status, @lcRetMsg, 160)

= MESSAGEBOX (ALLTRIM (lcRetMsg), 64, «MCI»)

RETURN «»

ENDIF

RETURN alltrim (lcRetMsg)

ENDPROC

PROCEDURE open

LPARAMETERS tcFileName, tHWND

LOCAL lcCMD

IF VARTYPE (tcFileName) = «C» .and. FILE (tcFileName)

* ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½ Π»ΠΈ Π² Π½Π°ΡΡ‚оящий ΠΌΠΎΠΌΠ΅Π½Ρ‚

* Π°ΡƒΠ΄ΠΈΠΎ ΠΈΠ»ΠΈ Π²ΠΈΠ΄Π΅ΠΎΡ„Π°ΠΉΠ»; Ссли Π΄Π°, Ρ‚ΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π³ΠΎ.

IF this. lLoad

this.DoCMD («CLOSE mediafile»)

ENDIF

tHWND = IIF (VARTYPE (tHWND) = «N», tHWND, 0)

* Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ HWND Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ, Ρ‚ΠΎ Π²ΠΈΠ΄Π΅ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ

* Π² ΠΎΠΊΠ½Π΅ Ρ„ΠΎΡ€ΠΌΡ‹; ΠΈΠ½Π°Ρ‡Π΅ — Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΎΠΊΠ½Π΅. ΠŸΡ€ΠΈ воспроизвСдСнии Π°ΡƒΠ΄ΠΈΠΎΡ„Π°ΠΉΠ»Π°

* MCI ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ STYLE

lcCMD = 'OPEN «' + tcFileName + '» ALIAS mediafile STYLE '

IF tHWND = 0

lcCMD = lcCMD + «Overlapped»

ELSE

lcCMD = lcCMD + «child parent «+ LTRIM (STR (tHWND))

ENDIF

lcCMD = lcCMD + «WAIT»

this.DoCMD (lcCMD)

IF this. Status = 0

this.lLoad = .t.

ENDIF

ENDIF

ENDPROC

PROCEDURE play

IF this. lLoad

this.DoCMD («PLAY mediafile»)

ENDIF

ENDPROC

PROCEDURE stop

IF this. lLoad

this.DoCMD («CLOSE mediafile»)

this.lLoad = .f.

ENDIF

ENDPROC

PROCEDURE pause

IF this. lLoad

IF this. DoCMD («STATUS mediafile MODE») = «playing»

this.DoCMD («PAUSE mediafile»)

ENDIF

ENDIF

ENDPROC

PROCEDURE getsize

LOCAL lcRetMsg, lnSize

lnSize = 0

IF this. lLoad

lcRetMsg = this. DoCMD («STATUS mediafile LENGTH»)

IF this. Status = 0

lnSize = VAL (lcRetMsg)

ENDIF

ENDIF

RETURN lnSize

ENDPROC

PROCEDURE getposition

LOCAL lcRetMsg, lnPosition

lnPosition = 0

IF this. lLoad

lcRetMsg = this. DoCMD («STATUS mediafile POSITION»)

IF this. Status = 0

lnPosition = VAL (lcRetMsg)

ENDIF

ENDIF

RETURN lnPosition

ENDPROC

PROCEDURE getvideodimension

PARAMETERS tnWidth, tnHeight

LOCAL lcRetMsg

IF this. lLoad

lcRetMsg = this. DoCMD ('WHERE mediafile destination')

IF this. Status = 0

tnWidth = VAL (GETWORDNUM (lcRetMsg, 3, ««))

tnHeight = VAL (GETWORDNUM (lcRetMsg, 4, ««))

ENDIF

ENDIF

ENDPROC

PROCEDURE setvolume

LPARAMETERS tnVolume

IF VARTYPE (tnVolume) = «N»

IF tnVolume < 0

tnVolume = 0

ENDIF

IF tnVolume > 1000

tnVolume = 1000

ENDIF

IF this. lLoad

this.DoCMD («SETAUDIO mediafile volume to «+ LTRIM (STR (tnVolume)))

ENDIF

ENDIF

ENDPROC

PROCEDURE setposition

LPARAMETERS tnPosition

LOCAL lcCMD, lnSize

IF VARTYPE (tnPosition) = «N»

IF this. lLoad

lcCMD = «SEEK mediafile to «

DO CASE

CASE tnPosition = -1 && Π’ Π½Π°Ρ‡Π°Π»ΠΎ Ρ„Π°ΠΉΠ»Π°

lcCMD = lcCMD + «start»

CASE tnPosition = -2 && Π’ ΠΊΠΎΠ½Π΅Ρ† Ρ„Π°ΠΉΠ»Π°

lcCMD = lcCMD + «end»

CASE tnPosition >= 0 && На Π·Π°Π΄Π°Π½Π½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ

IF tnPosition <= this. GetSize ()

lcCMD = lcCMD + LTRIM (STR (tnPosition))

ELSE

lcCMD = lcCMD + LTRIM (STR (this.GetSize ()))

ENDIF

ENDCASE

this.DoCMD (lcCMD)

= INKEY (0.5)

ENDIF

ENDIF

ENDPROC

PROCEDURE setvideorect

LPARAMETERS tnLeft, tnTop, tnWidth, tnHeight

IF VARTYPE (tnLeft) + VARTYPE (tnTop) + VARTYPE (tnWidth) + VARTYPE (tnHeight) = «NNNN»

LOCAL lcRetMsg

* ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ HWND для ΠΎΠΊΠ½Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ выводится Π²ΠΈΠ΄Π΅ΠΎ

lcRetMsg = this. DoCMD ('STATUS mediafile window handle wait')

IF this. Status = 0

* Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΎΠΊΠ½Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ выводится Π²ΠΈΠ΄Π΅ΠΎ

lnDestHwnd = VAL (lcRetMsg)

IF SetWindowPos (lnDestHwnd, 0, tnLeft, tnTop, tnWidth, tnHeight, 0) = 0

= MESSAGEBOX («ΠžΡˆΠΈΠ±ΠΊΠ° ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² ΠΎΠΊΠ½Π° для Π²ΠΈΠ΄Π΅ΠΎ», 64, «MCI»)

ENDIF

ENDIF

ENDIF

ENDPROC

PROCEDURE ready

IF this. lLoad

IF this. DoCMD («STATUS mediafile READY») = «true»

RETURN .t.

ENDIF

ENDIF

RETURN .f.

ENDPROC

PROCEDURE Destroy

this.Stop ()

ENDPROC

PROCEDURE Init

DECLARE Long mciSendString IN WinMM. DLL String, String @, Long, Long

DECLARE Long SetWindowPos IN User32. dll ;

Long, Long, Long, Long, Long, Long, Long

DECLARE Long mciGetErrorString IN WinMM. DLL Long, String, Long

ENDPROC

ENDDEFINE

4. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° всС Ρ„ΠΎΡ€ΠΌΡ‹ сдСланы, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, послС Ρ‡Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .app, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ всС нашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Visual Fox Pro, послС Ρ‡Π΅Π³ΠΎ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ контСкстном мСню Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ «File — New» (см. Ρ€ΠΈΡ. 8). Π’ ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ «Proekt» ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «New File» (см. Ρ€ΠΈΡ. 9), послС этого Π² ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΡƒΡ‚ΡŒ сохранСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» (см. Ρ€ΠΈΡ. 10). Π”Π°Π»Π΅Π΅ появляСтся ΠΎΠΊΠ½ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠœΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±ΡƒΠ΄Π΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ всС Π½ΡƒΠΆΠ½Ρ‹Π΅ Π½Π°ΠΌ Ρ„Π°ΠΉΠ»Ρ‹, Π° ΡΡ‚ΠΎ Ρ„ΠΎΡ€ΠΌΡ‹, классы, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈ Ρ‚. Π΄. ПослС добавлСния ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ само ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .app. Для этого Π½Π°ΠΌ всСго лишь Π½Π°Π΄ΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Build…» (см. Ρ€ΠΈΡ. 11), послС Ρ‡Π΅Π³ΠΎ появится ΠΎΠΊΠ½ΠΎ, Π³Π΄Π΅ Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡƒΠ½ΠΊΡ‚ «Application (app)», Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠžΠš» (см. Ρ€ΠΈΡ. 12). Π”Π°Π»Π΅Π΅ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΠΎΠΊΠ½ΠΎ сохранСния прилоТСния, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΡŒ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» (Аналогично рисунку 10).

Если Π’Ρ‹ Π²ΡΠ΅ сдСлаСтС ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ прСвосходно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Рис. 8

Рис. 9

Рис. 10

Рис. 11

Рис. 12

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

Π― Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ» свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Ρ…ΠΎΡ‚ΡŒ ΠΎΠ½ ΠΌΠ½Π΅ ΠΈ Π΄Π°Π²Π°Π»ΡΡ с Ρ‚Ρ€ΡƒΠ΄ΠΎΠΌ. Основная ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ — Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„ΠΎΡ€ΠΌ, классов, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, исправлСниС ошибок ΠΈ Π΄.Ρ‚. Но Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Ρ своим усилиям ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ учитСля, ΠΌΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ выглядит Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ. Π’ Ρ…ΠΎΠ΄Π΅ всСй ΠΌΠΎΠ΅ΠΉ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ я Π½Π°ΡƒΡ‡ΠΈΠ»ΡΡ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, мСню, ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ, Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ², Π΄Π΅Π»Π°Ρ‚ΡŒ Π°ΡƒΠ΄ΠΈΠΎΠΈ Π²ΠΈΠ΄Π΅ΠΎ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»ΠΈ.

1. Книга «Visual Foxpro 9 — КлСпинин, Агафонова»

2. Π‘Π°ΠΉΡ‚ «www.znanija.com»

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