Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠ°
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»