Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
25
Добавлен:
28.06.2014
Размер:
32.66 Кб
Скачать
ѓ‹Ђ‚Ђ 19.
‘Ћ‡„Ђ…Њ € €‘ЏЋ‹њ‡“…Њ Њ…Ќћ

ЊҐ­о пў«пҐвбп Є®¬Ї Єв­®© нЄа ­­®© д®а¬®©, ®ЎҐбЇҐзЁў о饩
ў§ Ё¬®¤Ґ©бвўЁҐ Їа®Ја ¬¬л Ё Ї®«м§®ў вҐ«п. „«п Ї®бв஥­Ёп ¬Ґ­о
FOXPRO ЇаҐ¤®бв ў«пҐв б।бвў , ЁбЇ®«м§®ў ­­лҐ ЇаЁ ᮧ¤ ­ЁЁ
бЁб⥬­®Ј® Ё­вҐа䥩б . ‚ Ї. 1.15 а бᬮваҐ­л Їа®б⥩訥 б।бвў .
€§гзЁў Ј« ўл 19-21, ўл б ¬Ё ᬮ¦ҐвҐ ᮧ¤ ў вм б«®¦­л©
Ё­вҐадҐ©б Ї®«м§®ў вҐ«п. „ ­­ п Ј« ў  ®б­®ўлў Ґвбп ­  ЇаҐ¤л¤г饩:
ў ЁбЇ®«м§®ў ­ЁЁ ®Є®­ Ё dBASE-¬Ґ­о ¬­®Ј® ®ЎйҐЈ®.

19.1. ‡­ Є®¬Ё¬бп б ®ЎйЁ¬Ё Ї®«®¦Ґ­Ёп¬Ё

‚ FOXPRO ЇаЁ¬Ґ­Ґ­л ¤ўҐ Є®­жҐЇжЁЁ ¬Ґ­о, ®¤­  Ё§ Є®в®але
(ЁбЇ®«м§гҐвбп ў "FOX-¬Ґ­о") ®б­®ў ­  ­  ®ЎйЁе ¤«п ¬­®ЈЁе п§лЄ®ў
Ё¤Ґпе,   ¤агЈ п (ЁбЇ®«м§гҐвбп ў "dBASE-¬Ґ­о") - § Ё¬бвў®ў ­  Ё§
‘“Ѓ„ dBASEIV. ‚ Ї.1.15 а бᬮв७® Їа®б⥩襥 FOX-¬Ґ­о. ’ЁЇЁз­ 
б«Ґ¤гой п б奬  FOX-¬Ґ­о, ¤®ЇгбЄ о饣® ¬­®¦Ґб⢥­­л© ®вЎ®а:
< ЋЇЁб ­ЁҐ н«Ґ¬Ґ­в®ў ¬Ґ­о >
< Љ®¬ ­¤  (Є®¬ ­¤л) ®ЇЁб ­Ёп FOX-¬Ґ­о >
DO WHILE .T. && "ЃҐбЄ®­Ґз­л©" жЁЄ«
< Љ®¬ ­¤   ЄвЁў жЁЁ FOX-¬Ґ­о> && Ћв®Ўа ¦Ґ­ЁҐ ¬Ґ­о, ўЄ«о祭ЁҐ
DO CASE && ¬Ґе ­Ё§¬  ўлЎ®а 
CASE <ЊҐ­о-ЇҐаҐ¬Ґ­­ п>=... && ‡­ зҐ­ЁҐ ¬Ґ­о-ЇҐаҐ¬Ґ­­®©
<„Ґ©бвўЁп, ᮮ⢥вбвўгойЁҐ && ®ЇаҐ¤Ґ«пҐвбп ᤥ« ­­л¬ ўлЎ®а®¬
­ҐЄ®в®а®¬г ўлЎ®аг>
. . .
CASE <ЊҐ­о-ЇҐаҐ¬Ґ­­ п>=...
EXIT && ‚л室 Ё§ жЁЄ« 
ENDCASE
ENDDO && Њ­®¦Ґб⢥­­л© ®вЎ®а ®ЎҐбЇҐзЁў Ґвбп §  бзҐв жЁЄ« 

Љ®Ј¤  梥⮢®© ¬ аЄҐа ­ ўҐ¤Ґ­ ­  ­г¦­л© Їг­Єв ¬Ґ­о Ё ­ ¦ в  Є« ўЁи 
Enter, ¬Ґ­о-ЇҐаҐ¬Ґ­­ п Ї®«гз Ґв §­ зҐ­ЁҐ ­®¬Ґа  ўлЎа ­­®Ј® Їг­Єв  Ё
¬Ґ­о ¤Ґ ЄвЁўЁагҐвбп, Ї®н⮬㠪®¬ ­¤   ЄвЁў жЁЁ Ї®бв ў«Ґ­  ў жЁЄ«.
dBASE-¬Ґ­о б«®¦­ҐҐ, ¤ ов Ў®«миҐ ў®§¬®¦­®б⥩, Ёе "¦Ё§­Ґ­­л© жЁЄ«"
ЋЇаҐ¤Ґ«Ґ­ЁҐ -> ЂЄвЁў жЁп -> €бЇ®«м§®ў ­ЁҐ -> „Ґ ЄвЁў жЁп -> “­Ёз⮦Ґ­ЁҐ
Ї®¤®ЎҐ­ "¦Ё§­Ґ­­®¬г жЁЄ«г" ®Є®­. ЋЇаҐ¤Ґ«Ґ­ЁҐ пў«пҐвбп б ¬®бв®п⥫쭮©
Ґ¤Ё­ЁжҐ©; ®­® ¬®¦Ґв ЁбЇ®«м§®ў вмбп Ё Ї® § ўҐа襭ЁЁ Їа®Ја ¬¬л:
dBASE-¬Ґ­о ¬®Јгв Ўлвм ®ЎйЁ¬ "¤®бв®п­ЁҐ¬" ­ҐбЄ®«мЄЁе Їа®Ја ¬¬. ЂЄвЁў жЁп
(ЁбЇ®«м§®ў ­ЁҐ, ¤Ґ ЄвЁў жЁп) ¬®¦Ґв Ўлвм ­Ґ®¤­®Єа в­®©. Љ Є Ё ®ЇЁб ­Ёп
®Є®­, ®ЇаҐ¤Ґ«Ґ­Ёп ¬Ґ­о § ­Ё¬ ов Ї ¬пвм, б«Ґ¤®ў вҐ«м­® Ё Є ­Ё¬
®в­®бпвбп ४®¬Ґ­¤ жЁЁ Ї.18.1. ќв Ї "ЁбЇ®«м§®ў ­ЁҐ" Є®аҐ­­л¬ ®Ўа §®¬
®в«Ёз Ґвбп ®в ЁбЇ®«м§®ў ­Ёп FOX-¬Ґ­о: dBASE-¬Ґ­о "б ¬®" ®Ўа й Ґвбп
Є Ў«®Є ¬ (Є®¬ ­¤ ¬) ®Ўа Ў®вЄЁ ᤥ« ­­®Ј® ўлЎ®а , Ї®н⮬㠬®¦­®
бва®Ёвм ¤ҐжҐ­ва «Ё§®ў ­­лҐ Їа®Ја ¬¬л, Є®в®алҐ "¤Ґа¦ вбп" ­  ¬Ґ­о Ё
Ї®звЁ ­  100% б®бв®пв Ё§ Ў«®Є®ў, ЇаЁ¤ ­­ле ¬Ґ­о. "’а бб  ўлЇ®«­Ґ­Ёп"
в Є®© Їа®Ја ¬¬л § ўЁбЁв ®в "бЁо¬Ё­гв­ле" аҐиҐ­Ё© Ї®«м§®ў вҐ«п.
Ћбў®Ёў бЁб⥬­л© Ё­вҐа䥩б FOXPRO, «ҐЈЄ® Ї®­пвм нвг Ё¤Ґо.
‚ FOX- Ё dBASE-¬Ґ­о ЁбЇ®«м§говбп ®¤Ё­ Є®ўлҐ вҐе­ЁзҐбЄЁҐ аҐиҐ­Ёп:
- ЇаЁ ¤Ґ ЄвЁў жЁЁ ¬Ґ­о ў®ббв ­ ў«Ёў Ґвбп ЇҐаҐЄал⮥ Ё¬ Ё§®Ўа ¦Ґ­ЁҐ;
- Їг­Єв ўҐавЁЄ «м­®Ј® ¬Ґ­о (Ї®¤¬Ґ­о) ¬®¦­® ўлЎа вм ­ ¦ вЁҐ¬ 1-© ЎгЄўл
(нв® ­Ґ ®в­®бЁвбп «Ёим Є Ї®¤¬Ґ­о б Є®¬Ї®­Ґ­в ¬Ё Ѓ„ Ё бЇа ўҐ¤«Ёў® ў®
ўбҐе ўҐабЁпе FOXPRO ¤«п « вЁ­бЄЁе ЎгЄў); ЇаЁ ®¤Ё­ Є®ўле ­ з «м­ле
ЎгЄў е Їг­Єв®ў ўлЎЁа Ґвбп ЇҐаўл© Ї® Ї®ап¤Єг Ё§ ­Ёе; Ґб«Ё ¤Ґ©бвўгҐв
гбв ­®ўЄ  SET CONFIRM ON, ¤«п § ўҐа襭Ёп ўлЎ®а  ­г¦­® ­ ¦ вм Enter;
- ў ўҐавЁЄ «м­ле ¬Ґ­о бЁ¬ў®« "\" ў ­ з «Ґ Їг­Єв  ЇаҐЇпвбвўгҐв ҐЈ®
ўлЎ®аг (в Є®© Їг­Єв Ё§®Ўа ¦Ґ­ ЇаЁЈ«г襭­л¬ 梥⮬); ­ ЇаЁ¬Ґа, "\"
¤®Ў ў«пов Ї®б«Ґ ўлЎ®а  Їг­Єв , зв®Ўл ў®бЇаҐЇпвбвў®ў вм Ї®ўв®а­®¬г
ўлЎ®аг. ‚ ўҐавЁЄ «м­®¬ ¬Ґ­о бЁ¬ў®« "\" Ї®§ў®«пҐв Ё¬Ґвм § Ј®«®ўЄЁ
а §¤Ґ«®ў, ­ ЇаЁ¬Ґа: "\‘…ђ‚€‘: ";
- ¤ўгебЁ¬ў®«м­л© Їг­Єв "\-" ᮧ¤ Ґв а §¤Ґ«ЁвҐ«м­го «Ё­Ёо
(Ј®аЁ§®­в «м) ў ўҐавЁЄ «м­®¬ ¬Ґ­о;
- бЁ¬ў®«л "\>" ўЄ«оз ов ў § ЇЁбм Їг­Єв  б«Ґў  ®в "Ј®ап祩" ЎгЄўл,
Є®в®а п Ўг¤Ґв ўл¤Ґ«Ґ­  梥⮬, ­ ЇаЁ¬Ґа "‚\>›•Ћ„" (§­ ЄЁ "\>" ­ 
нЄа ­Ґ ­Ґ ўлᢥ稢 овбп; Їг­Єв "‚›•Ћ„" ¬®¦­® Ўг¤Ґв ўлЎЁа вм
­ ¦ вЁҐ¬ ЎгЄўл "›");
- ¬®¦­® ўлЎЁа вм Їг­Євл (Ї®¤Їг­Євл) ¬Ґ­о ¬лимо.
Џ®пб­Ё¬ ­ҐЄ®в®алҐ ®Ў®§­ зҐ­Ёп, ЁбЇ®«м§гҐ¬лҐ ў Є®¬ ­¤ е ¬Ґ­о.
<€¬п ¬ ббЁў > ®Ў®§­ з Ґв бЁ¬ў®«м­л© ¬ ббЁў Їг­Єв®ў ¬Ґ­о (Ї®¤¬Ґ­о);
<ђ §¬Ґа> - а §¬Ґа ¬ ббЁў , зЁб«® Їг­Єв®ў ¬Ґ­о (Ї®¤¬Ґ­о);
Y1,X1 (Y2,X2) - Є®®а¤Ё­ вл «Ґў®Ј® ўҐае­ҐЈ® (Їа ў®Ј® ­Ё¦­ҐЈ®) гЈ« 
®Ў« бвЁ, § ­пв®© ўҐавЁЄ «м­л¬ ¬Ґ­о (Ї®¤¬Ґ­о) ­  нЄа ­Ґ; нвЁ
Є®®а¤Ё­ вл - ®Є®­­лҐ, Ґб«Ё ў ®ЇаҐ¤Ґ«Ґ­ЁЁ ¬Ґ­о гЄ § ­® ®Є­®;
TITLE<‚лаC> гЄ §лў Ґв § Ј®«®ў®Є <‚лаC> ўҐавЁЄ «м­®Ј® ¬Ґ­о;
<Ќ®¬Ґа> - ­®¬Ґа Їг­Єв  ¬Ґ­о ў ўЁ¤Ґ <‚лаN>.
‚лЇ®«­пп § ¤ ­ЁҐ 19.1, ўл ў®бЇ®«м§гҐвҐбм Є®¬ ­¤ ¬Ё Ё§ Ї.1.15.
‚ Є®¬ ­¤Ґ SET MESSAGE TO <‚лаN>, гЄ §лў о饩 бва®Єг Є®¬¬Ґ­в аЁп,
ў¬Ґбв®  ваЁЎгв  CENTER ("Ї® 業ваг") ¬®¦­® § ЇЁб вм LEFT (RIGHT),
®Ў®§­ зЁў нвЁ¬, зв® Є®¬¬Ґ­в аЁ© ­ ¤® "ЇаЁ¦ вм" Є «Ґў®¬г (Їа ў®¬г)
Єа о бва®ЄЁ.
‡ ¤ ­ЁҐ 19.1. ‘®§¤ ©вҐ ўҐавЁЄ «м­®Ґ ¬Ґ­о б Їг­Єв ¬Ё "ЃЂ‡›:",
"‘®§¤ ­ЁҐ Ў §л","„®Ї®«­Ґ­ЁҐ","ђҐ¤ ЄвЁа®ў ­ЁҐ","‘…ђ‚€‘:",
"€­¤ҐЄбЁа®ў ­ЁҐ","Љ®ЇЁа®ў ­ЁҐ","‘®авЁа®ўЄ ","“Ї Є®ўЄ ","‚›•Ћ„".
Џг­Євл "ЃЂ‡›:","‘…ђ‚€‘:" ­Ґ ¤®«¦­л ўлЎЁа вмбп - нв® § Ј®«®ўЄЁ
ЈагЇЇ Їг­Єв®ў. ЌЁ¦Ґ Їг­Єв®ў "ђҐ¤ ЄвЁа®ў ­ЁҐ","“Ї Є®ўЄ "
ᤥ« ©вҐ а §Ја ­ЁзЁвҐ«м­лҐ Ј®аЁ§®­в «м­лҐ «Ё­ЁЁ.

19.2. ‘®§¤ Ґ¬ ўҐавЁЄ «м­лҐ FOX-¬Ґ­о (POPUP-¬Ґ­о)

‘®§¤ ­ЁҐ ўҐавЁЄ «м­®Ј® FOX-¬Ґ­о 㤮Ў­ҐҐ Ё Їа®йҐ, 祬 ¬Ґ­о
б Їа®Ё§ў®«м­л¬ а бЇ®«®¦Ґ­ЁҐ¬ Їг­Єв®ў (б¬. Ї.1.15). Џ®¤®Ў­®
Achoice-¬Ґ­о (Ї.5.8) ®­® Ё¬ҐҐв Їа®ЄагвЄг. Џг­Євл ¬Ґ­о ᢥ¤Ґ­л ў
бЁ¬ў®«м­л© ¬ ббЁў, Ї®б«Ґ ®ЇаҐ¤Ґ«Ґ­Ёп Ё § Ї®«­Ґ­Ёп Є®в®а®Ј®
®ЇЁблў Ґвбп б ¬® ¬Ґ­о:
@ Y1,X1 MENU <€¬п ¬ ббЁў >,<ђ §¬Ґа>,<‚лаN> TITLE<‚лаC>,
Ј¤Ґ <‚лаN> - зЁб«® бва®Є ¬Ґ­о. „«Ё­  Їг­Єв  ¬Ґ­о ®Ја ­ЁзҐ­  76
бЁ¬ў®« ¬Ё.
Љ®¬ ­¤  READ MENU TO <ЏҐаҐ¬Ґ­­ п> SAVE
 ЄвЁўЁагҐв POPUP-¬Ґ­о, ®в®Ўа ¦ п ҐЈ®. ‡­ зҐ­ЁҐ¬ зЁб«®ў®©
<ЏҐаҐ¬Ґ­­®©> пў«пҐвбп ­®¬Ґа Їг­Єв  ¬Ґ­о  )ўл¤Ґ«пҐ¬®Ј® ¬ аЄҐа®¬
ЇаЁ ЇаҐ¤кпў«Ґ­ЁЁ ¬Ґ­о ­  нЄа ­ (<ЏҐаҐ¬Ґ­­ п> ЇаҐ¤ў аЁвҐ«м­®
Ї®«гз Ґв §­ зҐ­ЁҐ), Ў)®Ў®§­ зҐ­­®Ј® ¬ аЄҐа®¬ ў ¬®¬Ґ­в ­ ¦ вЁп
Enter (§­ зҐ­ЁҐ <ЏҐаҐ¬Ґ­­®©> ®ва ¦ Ґв ўлЎ®а). Љ« ўЁи  Enter
ॠ«Ё§гҐв ўлЎ®а, Є« ўЁи  Esc - ®вЄ § ®в ўлЎ®а  (<ЏҐаҐ¬Ґ­­ п>
Ї®«гз Ґв §­ зҐ­ЁҐ 0). ЋЇжЁп SAVE Ї®§ў®«пҐв б®еа ­пвм ¬Ґ­о ­ 
нЄа ­Ґ, Ё­ зҐ ®­® г¤ «пҐвбп Ї®б«Ґ ᤥ« ­­®Ј® ўлЎ®а .
ЏаЁ¬Ґа 19.1. ‘®§¤ ¤Ё¬ ¬Ґ­о ¤«п ®вЎ®а  ЇаЁ®ЎаҐв Ґ¬ле
¬ вҐаЁ «®ў, иЁдал Є®в®але Ї®¬ҐбвЁ¬ ў бЁ¬ў®«м­л© ¬ ббЁў Marka.
‚лЎа ­­лҐ иЁдал ЇҐаҐ­®бпвбп ў 1-© бв®«ЎҐж ¬ ббЁў  Zakup Ё
ўлᢥ稢 овбп ­  нЄа ­Ґ бЇа ў  ®в ¬Ґ­о. Џ®ўв®а­л© ўлЎ®а иЁда 
Ў«®ЄЁагҐвбп. „«п в®Ј®, зв®Ўл ЁбЇлв вм Їа®Ја ¬¬г, бд®а¬Ёа㥬
ЁбЄгбб⢥­­лҐ "иЁдал" б Ї®¬®ймо Ў«®Є®ў Buk, Cif. ”г­ЄжЁп Buk(N)
ў®§ўа й Ґв бва®Єг Ё§ N б«гз ©­ле ЎгЄў,   Cif(M) - Ё§ M
б«гз ©­ле жЁда. Џгбвм Ўг¤Ґв 4 ЎгЄўл (­ з «® "иЁда ") Ё 3 жЁдал.
‚®§м¬Ґ¬ 20 иЁда®ў.
SET TALK OFF
DECLARE Marka[20], Zakup[20,2]
FOR J=1 TO 20
Marka[J] = Buk(4) + Cif(3)
ENDFOR
@ 3,24 MENU Marka, 20 TITLE "€”ђ› ЊЂ’…ђ€Ђ‹Ћ‚"
CLEAR && ЋзЁбвЄ  нЄа ­ 
@ 1,25 SAY "ЊЂ‘‘€‚ Marka --> ЊЂ‘‘€‚ Zakup"
@ 2,25 SAY Replicate("*",30)
i = 0
DO WHILE .T.
READ MENU TO n SAVE && n ­Ґ § ¤ ­®, ¬ аЄҐа ўл¤Ґ«пҐв 1-© Їг­Єв
IF n = 0 && ‘«гз © ®вЄ §  ®в ўлЎ®а 
EXIT && ‚л室 Ё§ жЁЄ« 
ELSE && Њл ­Ґ ў®бЇ®«м§®ў «Ёбм бвагЄвга®© DO CASE
i = i+1 && ўўЁ¤г ¬ «®Ј® зЁб«  ўҐвўҐ©
Zakup[i] = Marka[n]
@ 3+n,50 SAY Zakup[i] && Ћв®Ўа ¦Ґ­ЁҐ ўлЎа ­­®Ј® иЁда 
Marka[n] = "\"+ Marka[n] && Ѓ«®ЄЁа®ў ­ЁҐ Ї®ўв®а­®Ј® ўлЎ®а 
ENDIF
ENDDO
@ 24,2 SAY "‚›ЃђЂЌЋ"+ Str(i,4)+" €”ђ"+Iif(i=1,"",Iif(i<5,"Ђ","Ћ‚"))
FUNCTION Buk
PARAM N,K,B,J,S && K,B,J,S - ­Ґ Ї а ¬Ґвал
S = ""
K = ASC("Z")
FOR J=1 TO N
S = S + Chr(Int(K - 26*Rand())+1)
ENDFOR
RETURN S
FUNCTION Cif
PARAM N
RETURN Padl(Ltrim(Str(10**N * Rand(), N)),3,"0")
‡ ¬ҐвЁ¬, зв® ЇаЁ Ў®«м襬 зЁб«Ґ иЁда®ў ў®§¬®¦­® ЇаҐўл襭ЁҐ
ЇаҐ¤Ґ«м­®Ј® ­®¬Ґа  бва®ЄЁ (ў Є®¬ ­¤Ґ @ 3+n ...SAY) Ё в®Ј¤  ¤ ­­л©
ў аЁ ­в ®в®Ўа ¦Ґ­Ёп ўлЎа ­­ле иЁда®ў ЇҐаҐбв Ґв "а Ў®в вм".
Џ®Їа®Ўг©вҐ гб®ўҐа襭бвў®ў вм Їа®Ја ¬¬г.
‡ ¤ ­ЁҐ 19.2. €§¬Ґ­ЁвҐ Їа®Ја ¬¬г ЇаЁ¬Ґа  19.1 б ⥬, зв®Ўл
ЇаЁ Ї®ўв®а­®¬ ўлЎ®аҐ иЁда ЁбЄ«оз «бп Ё§ ¬ ббЁў  Zakup Ё Ёб祧 «®
ҐЈ® ®в®Ўа ¦Ґ­ЁҐ бЇа ў  ®в ¬Ґ­о.

19.3. ‘ва®Ё¬ ¤ўгега®ў­Ґў®Ґ FOX-¬Ґ­о (PULLDOWN-¬Ґ­о)

„ўгега®ў­Ґў®Ґ FOX-¬Ґ­о ®Ўа §®ў ­® а §¬Ґй Ґ¬®© ў ўҐае­Ґ© з бвЁ
нЄа ­  «Ё­Ґ©Є®© Їг­Єв®ў - § Ј®«®ўЄ®ў ўҐавЁЄ «м­ле Ї®¤¬Ґ­о - Ё
б ¬Ё¬Ё Ї®¤¬Ґ­о. “в®з­Ё¬: ў «Ё­Ґ©ЄҐ ¬®Јгв Ўлвм Їг­Євл, ­Ґ Ё¬ҐойЁҐ
Ї®¤¬Ґ­о. Џ®¤¬Ґ­о ®в®Ўа ¦ Ґвбп ­  нЄа ­Ґ, Є®Ј¤  ¬ аЄҐа «Ё­Ґ©ЄЁ
­ ў®¤пв ­  ҐЈ® § Ј®«®ў®Є. Ћв Ї®б«Ґ¤­ҐЈ® (ЇҐаў®Ј®) Їг­Єв  «Ё­Ґ©ЄЁ
Ґбвм ЇҐаҐе®¤ Є ЇҐаў®¬г (Ї®б«Ґ¤­Ґ¬г) Їг­Євг.
‹Ё­Ґ©Є  § Ј®«®ўЄ®ў ®ЇЁблў Ґвбп Є®¬ ­¤®©
MENU BAR <€¬п ¬ ббЁў >, <ђ §¬Ґа> .
Њ ббЁў ¤®«¦Ґ­ Ё¬Ґвм 2 бв®«Ўж : ЇҐаўл© ᮤҐа¦Ёв Їг­Євл «Ё­Ґ©ЄЁ,  
ўв®а®© - Є®¬¬Ґ­в аЁЁ Є ­Ё¬. Љ®¬¬Ґ­в аЁ© ўлў®¤Ёвбп ў бва®ЄҐ,
ЇаҐ¤ў аЁвҐ«м­® гЄ § ­­®© ў Є®¬ ­¤Ґ SET MESSAGE TO. ‚ ®вбгвбвўЁҐ
Є®¬¬Ґ­в аЁп ў® 2-© бв®«ЎҐж Ї®¬Ґй ов Їгбвго бва®Єг.
Љ ¦¤®Ґ Ї®¤¬Ґ­о ®ЇЁблў Ґв Є®¬ ­¤ 
MENU <Ќ®¬Ґа>,<€¬п ¬ ббЁў >,<ђ §¬Ґа>,<‚лаN> ,
Ј¤Ґ <‚лаN> - зЁб«® бва®Є ¬Ґ­о, гЄ §лў Ґ¬®Ґ, Ґб«Ё ¬Ґ­о 楫ЁЄ®¬ ­Ґ
㬥頥вбп ­  нЄа ­Ґ.
ЂЄвЁўЁагҐв ¬Ґ­о Є®¬ ­¤ 
READ MENU BAR TO <Bar-ЇҐаҐ¬Ґ­­ п>,<ЏҐаҐ¬Ґ­­ п> SAVE
ЋЇжЁп SAVE Ї®пб­Ґ­  ў Ї.19.2, Bar-ЇҐаҐ¬Ґ­­ п - нв® ­®¬Ґа Їг­Єв 
«Ё­Ґ©ЄЁ, <ЏҐаҐ¬Ґ­­ п> - ­®¬Ґа Ї®¤Їг­Єв . …б«Ё ¤®  ЄвЁў жЁЁ ¬Ґ­о
нвЁ §­ зҐ­Ёп § ¤ ­л, в® ­  нЄа ­ Ўг¤Ґв ЇаҐ¤кпў«Ґ­® ᮮ⢥вбвўго饥
Ї®¤¬Ґ­о б ўл¤Ґ«Ґ­ЁҐ¬ ў ­Ґ¬ гЄ § ­­®Ј® Їг­Єв . ќвЁ ¦Ґ ЇҐаҐ¬Ґ­­лҐ
®ва ¦ ов १г«мв в ўлЎ®а , Є®Ј¤  ­ ¦ в  Enter. ЏаЁ ­ ¦ вЁЁ Esc
(®вЄ § ®в ўлЎ®а ) ®­Ё Ї®«гз ов §­ зҐ­ЁҐ 0. <ЏҐаҐ¬Ґ­­ п> а ў­  0
в Є¦Ґ ў ®вбгвбвўЁҐ Ї®¤¬Ґ­о.
ЏаЁ¬Ґа 19.2. ‚®бЇ®«м§гҐ¬бп "б⮬" § ¤ ­Ёп 19.1, ᤥ« ў бва®ЄЁ
"ЃЂ‡›: ", "‘…ђ‚€‘: ", "‚›•Ћ„" § Ј®«®ўЄ ¬Ё Ї®¤¬Ґ­о:
SET TALK OFF
CLEAR
DECLARE X[3,2], Y[3], Z[4]
X[1,1] = "ЃЂ‡›: "
X[2,1] = "‘…ђ‚€‘: "
X[3,1] = "‚›•Ћ„"
X[1,2] = "" && ЏаЁбў®Ґ­ЁҐ §­ зҐ­Ё© н«Ґ¬Ґ­в ¬ 2-Ј®
X[2,2] = "" && ®Ўп§ вҐ«м­® Ё ў ®вбгвбвўЁҐ Є®¬¬Ґ­в аЁҐў
X[3,2] = ""
Y[1] = "‘®§¤ ­ЁҐ Ў §л"
Y[2] = "„®Ї®«­Ґ­ЁҐ" && €б室­®Ґ б®бв®п­ЁҐ ¬Ґ­о:
Y[3] = "ђҐ¤ ЄвЁа®ў ­ЁҐ" && ЃЂ‡›: ‘…ђ‚€‘: ‚›•Ћ„
Z[1] = "€­¤ҐЄбЁа®ў ­ЁҐ" && ---------------
Z[2] = "Љ®ЇЁа®ў ­ЁҐ" && ‘®§¤ ­ЁҐ
Z[3] = "‘®авЁа®ўЄ " && „®Ї®«­Ґ­ЁҐ
Z[4] = "“Ї Є®ўЄ " && ђҐ¤ ЄвЁа®ў ­ЁҐ
MENU BAR X, 3 && ---------------
MENU 1, Y, 3
MENU 2, Z, 4 && „ ­­л¬Ё 3 Є®¬ ­¤ ¬Ё ¬Ґ­о ®ЇЁб ­®
DO WHILE .T.
READ MENU BAR TO i,j && ЂЄвЁў жЁп ¬Ґ­о, ®в®Ўа ¦Ґ­ЁҐ ­  нЄа ­Ґ
@ 24,0 && ЋзЁбвЄ  24-© бва®ЄЁ
DO CASE
CASE i = 1 && €¬Ёв жЁп ®Ўа Ў®вЄЁ; зЁв вҐ«м Ї®­Ё¬ Ґв, зв® ¤®«¦­®
@ 24,1 SAY Y[j]+" ‚›ЏЋ‹Ќ…ЌЋ" && Ўлвм ®Ўа йҐ­ЁҐ Є Ў«®Єг ®Ўа Ў®вЄЁ
CASE i = 2
@ 24,1 SAY Z[j]+" ‚›ЏЋ‹Ќ…Ќ" + Iif(j>2,"Ђ","Ћ")
CASE i = 3
EXIT
ENDCASE
ENDDO
‡ ¤ ­ЁҐ 19.3. „®Ў ўм⥠ў Їа®Ја ¬¬г ЇаЁ¬Ґа  19.2 Ї®¤¬Ґ­о 3-Ј®
га®ў­п б Їг­Єв ¬Ё "Љ®¬ ­¤  CREATE", "Љ®¬ ­¤  CREATE DBF", ўЄ«оз Ґ¬®Ґ
ЇаЁ ўлЎ®аҐ Їг­Єв  "‘®§¤ ­ЁҐ Ў §л" Ї®¤¬Ґ­о "ЃЂ‡›: ".

19.4. Ћбў Ёў Ґ¬ ўҐавЁЄ «м­лҐ dBASE-¬Ґ­о (POPUP-¬Ґ­о)

‚ҐавЁЄ «м­®Ґ dBASE-¬Ґ­о Ё¬ҐҐв ўЁ¤ Їаאַ㣮«м­ЁЄ , а §¬Ґй Ґ¬®Ј®
ў § ¤ ­­®¬ ¬Ґб⥠⥪г饣® Ё«Ё гЄ § ­­®Ј® ®Є­  (нЄа ­ ). …б«Ё зЁб«®
бва®Є ¬Ґ­миҐ зЁб«  Їг­Єв®ў ¬Ґ­о, ЁбЇ®«м§гҐвбп Їа®ЄагвЄ . ѓ« ў­®Ґ
®в«ЁзЁҐ ®в FOX-¬Ґ­о - ў ᮤҐа¦ ­ЁЁ Їг­Єв®ў Ё ®Ўа Ў®вЄҐ ўлЎ®а .
ЋЎа Ў®вЄ  ўлЎ®а  ¬®¦Ґв б®бв®пвм ў ўлЇ®«­Ґ­ЁЁ ­ §­ зҐ­­®© Є®¬ ­¤л
(®Ўлз­® - ўл§®ў Ў«®Є  ®Ўа Ў®вЄЁ ўлЎ®а ) Ё«Ё  ЄвЁўЁ§ жЁЁ Ї®¤¬Ґ­о.
ЋЎа Ў®вЄг ўлЎ®а  ¬®¦­® ®в«®¦Ёвм Ё ў®®ЎйҐ ўлЇ®«­Ёвм "§  а ¬Є ¬Ё"
¬Ґ­о, Ї®бЄ®«мЄг Ё­д®а¬ жЁп ® ўлЎа ­­®¬ Їг­ЄвҐ (Їг­Єв е) б®еа ­пҐвбп
Ё ¬®¦Ґв Ўлвм Ї®«г祭  б Ї®¬®ймо ᮮ⢥вбвўгойЁе дг­ЄжЁ© (б¬. Ї. 19.6).
Џг­Євл - бва®ЄЁ Їа®Ё§ў®«м­®Ј® ᮤҐа¦ ­Ёп - ®ЇЁблў овбп а §¤Ґ«м­®,
  Ґб«Ё нв® Ё¬Ґ­  д ©«®ў, Є®¬Ї®­Ґ­вл ®вЄалвле Ѓ„ Ё«Ё Ё¬Ґ­  Ї®«Ґ©
 ЄвЁў­®© Ѓ„, Їг­Євл ­Ґ ®ЇЁблў овбп,   б®ў®ЄгЇ­® гЄ §лў овбп ў
Є®¬ ­¤Ґ ®ЇЁб ­Ёп ¬Ґ­о (ЇаЁў®¤Ёвбп вЁЇЁз­ п ҐҐ д®а¬ ):
DEFINE POPUP <€¬п ¬Ґ­о> TITLE<‚лаC> FROM Y1,X1 TO Y2,X2 ;
PROMPT <€бв®з­ЁЄ Їг­Єв®ў ¬Ґ­о> ,
Ј¤Ґ <€бв®з­ЁЄ Їг­Єв®ў ¬Ґ­о> Ё¬ҐҐв б«Ґ¤гойЁҐ ў аЁ ­вл § ЇЁбЁ:
- STRUCTURE, ЇаҐ¤бв ў«пҐв Ё¬Ґ­  Ї®«Ґ©  ЄвЁў­®© Ѓ„;
- FIELD <‚ла>, ЇаҐ¤бв ў«пҐв Ї®«Ґ Ѓ„ Ё«Ё ўла ¦Ґ­ЁҐ б Ї®«п¬Ё Ѓ„;
- FILES LIKE<Њ бЄ >, ЇаҐ¤бв ў«пҐв Ё¬Ґ­  д ©«®ў ў ⥪г饩 Ё«Ё Ё­®©
¤ЁаҐЄв®аЁЁ, ЇаЁзҐ¬ ­Ґ®Ўп§ вҐ«м­ п <Њ бЄ > Ї®§ў®«пҐв § ¤ вм ¤ЁбЄ, Їгвм
(ў®§¬®¦­®Ґ ­ з «® <Њ бЄЁ>) Ё ўл¤Ґ«Ёвм Ї®¤¬­®¦Ґбвў® Ё¬Ґ­ д ©«®ў.
€в Є, Єа®¬Ґ § ¤ ­­ле Їа®Ё§ў®«м­ле бва®Є, Їг­Євл ¬Ґ­о ¬®Јгв Ўлвм
 )Ё¬Ґ­ ¬Ё Ї®«Ґ©  ЄвЁў­®© Ѓ„; Ў)§­ зҐ­Ёп¬Ё <‚ла> ¤«п ¬­®¦Ґбвў  § ЇЁбҐ©
Ѓ„ (¬ ЄбЁ¬г¬ 32767 § ЇЁбҐ©); ў)Ё¬Ґ­ ¬Ё д ©«®ў. ‘®зҐв вм Ёе б
Ё­¤ЁўЁ¤г «м­® ®ЇЁб ­­л¬Ё Їг­Єв ¬Ё ў ®¤­®¬ ¬Ґ­о ­Ґ«м§п, ­® ¬®¦­®
ᤥ« вм ¤ўгега®ў­Ґў®Ґ ¬Ґ­о: ў ®б­®ў­®¬ ¬Ґ­о - Ё­¤ЁўЁ¤г «м­® ®ЇЁб ­­лҐ
Їг­Євл Ё ўл§®ў Ї®¤¬Ґ­о (б¬. Ї.19.5),   ў Ї®¤¬Ґ­о - "Є®««ҐЄвЁў­®"
®ЇЁб ­­лҐ Їг­Євл.
Љ®¬ ­¤  DEFINE POPUP ¤®«¦­  Ўлвм ЇҐаў®© б।Ё Є®¬ ­¤ ®ЇЁб ­Ёп ¬Ґ­о.
Љ®¬ ­¤  ON SELECTION POPUP <€¬п ¬Ґ­о Ё«Ё ALL> <Љ®¬ ­¤ >
§ ¤ Ґв ॠЄжЁо ­  ўлЎ®а «оЎ®Ј® Ё§ Їг­Єв®ў ¬Ґ­о. "€­¤ЁўЁ¤г «м­лҐ" ॠЄжЁЁ
а бᬮваЁ¬ Ї®§¤­ҐҐ. …б«Ё <Љ®¬ ­¤ > ­Ґ § ЇЁб ­ , нв® ®§­ з Ґв ®в¬Ґ­г
а ­ҐҐ ­ §­ зҐ­­®© ॠЄжЁЁ. ’ЁЇЁз­®© ॠЄжЁҐ© ­  ўлЎ®а пў«пҐвбп ўл§®ў
Їа®жҐ¤гал. ЂваЁЎгв ALL ®§­ з Ґв ॠЄжЁо ­  ўлЎ®а Їг­Єв  ў «оЎ®¬
POPUP-¬Ґ­о.
ЂЄвЁў жЁо ¬Ґ­о ॠ«Ё§гҐв Є®¬ ­¤  ACTIVATE POPUP <€¬п ¬Ґ­о><ЋЇжЁЁ>,
¤Ґ ЄвЁў жЁо - Є« ўЁи  Esc Ё«Ё Є®¬ ­¤  DEACTIVATE POPUP (ў ­Ґ© Ё¬п ¬Ґ­о
­Ґ вॡгҐвбп). ‚ १г«мв вҐ ¤Ґ ЄвЁў жЁЁ ®в®Ўа ¦Ґ­ЁҐ ¬Ґ­о Ёб祧 Ґв Ё
гЇа ў«Ґ­ЁҐ ЇҐаҐе®¤Ёв Є Є®¬ ­¤Ґ, б«Ґ¤го饩 §  ACTIVATE POPUP Ї® ⥪бвг.
Љ®¬ ­¤  DEACTIVATE POPUP а §¬Ґй Ґвбп ў Їа®жҐ¤гаҐ, ўл§лў Ґ¬®© ᮮ⢥в-
бвўгойЁ¬ Їг­Єв®¬ ¬Ґ­о. ‡ ­пв п ®ЇЁб ­Ёп¬Ё ўбҐе ўҐавЁЄ «м­ле ¬Ґ­о
Ї ¬пвм ®бў®Ў®¦¤ Ґвбп Є®¬ ­¤®© CLEAR POPUPS. „Ґ ЄвЁў жЁп г­Ёз⮦ Ґ¬®Ј®
¬Ґ­о ­Ґ ®Ўп§ вҐ«м­ .
ЏаЁ¬Ґа 19.3. ЋЇЁиҐ¬ Ї®¤¬Ґ­о ¤«п б«гз Ґў " ","Ў","ў" (б¬. ўлиҐ).
Ѓ §  Primer Ё¬ҐҐв Ї®«п Famil, Dtr (¤ в  ஦¤Ґ­Ёп), Pol (Џ®«).
ђҐ ЄжЁо ­  ўлЎ®а Їг­Єв®ў ®ЇаҐ¤Ґ«Ё¬ «Ёим ¤«п ¬Ґ­о Struc - Ґо Ўг¤Ґв
Ё­¤ҐЄбЁа®ў ­ЁҐ  ЄвЁў­®© Ѓ„ Ї® ўлЎа ­­®¬г Ї®«о. ‚ Є®¬ ­¤Ґ INDEX ON
дг­ЄжЁп Prompt() ў®§ўа й Ґв ўлЎа ­­л© Їг­Єв (Ё¬п Ї®«п) ў ўЁ¤Ґ бва®ЄЁ,
  дг­ЄжЁп Evaluate - а Ў®в Ґв Є Є ¬ Єа®Ї®¤бв ­®ўЄ .
* ”Ђ‰‹ PRIMER.PRG
DO TriPup && ЋЇаҐ¤Ґ«Ґ­ЁҐ ваҐе ЁбЇ®«м§гҐ¬ле ¬Ґ­о
ACTIVATE POPUP Prog && „«п ¤Ґ ЄвЁў жЁЁ ¬Ґ­о §¤Ґбм ЁбЇ®«м§гҐвбп Esc
USE Primer && ЋвЄалў Ґ¬ Ў §г ¤ ­­ле
ACTIVATE POPUP Struc
ACTIVATE POPUP Basa && ЊҐ­о ®в®Ўа ¦ овбп Ё ЁбЇ®«м§говбп Ї®®зҐаҐ¤­®
CLEAR POPUPS && “­Ёз⮦Ґ­ЁҐ ўбҐе 3 ¬Ґ­о
PROCEDURE TriPup
DEFINE POPUP Prog TITLE "Џа®Ја ¬¬л Љг§мЄЁ­ :" ;
PROMPT FILES LIKE A:\KUZKIN\*.PRG && ‚ᥠ.PRG-д ©«л
DEFINE POPUP Struc FROM 3,30 TITLE " €¬п Ї®«п: " ;
PROMPT STRUCTURE && ‘вагЄвга  Ѓ„ Primer
DEFINE POPUP Basa FROM 1,55 TITLE "” ¬Ё«Ёп „ в  ஦¤. Џ®«" ;
PROMPT FIELD Left(Famil,15) + DTOC(Dtr) +" "+ Pol
ON SELECTION POPUP Struc INDEX ON Evaluate(Prompt()) TO InSt
* ЏаЁ¬Ґа­л© ўЁ¤ ¬Ґ­о Struc Ё Basa: --” ¬Ё«Ёп „ в  ஦¤. Џ®«--
* --€¬п Ї®«п-- Љг§мЄЁ­ 12/31/78 Њ
* Famil ‘Ё¤®а®ў  10/25/78 †
* Dtr ™гЄЁ­ 10/11/77 Њ
* Pol џЄ®ўҐ­Є® 11/10/78 †
* ------------ -------------------------------
ЋЄ­  ў ®ЇЁб ­Ёпе ¬Ґ­о ­Ґ гЄ § ­л, Ї®н⮬㠪®®а¤Ё­ вл - нЄа ­­лҐ.
‚ ®ЇЁб ­ЁЁ ¬Ґ­о Prog ®­Ё ў®®ЎйҐ ®вбгвбвўгов. ќв® ®§­ з Ґв, зв® Y1=X1=0;
ў® ўбҐе 3 ¬Ґ­о Ї® 㬮«з ­Ёо X2 ®ЇаҐ¤Ґ«пҐвбп ¬ ЄбЁ¬ «м­®© ¤«Ё­®©
Їг­Єв , Y2 - зЁб«®¬ Їг­Єв®ў N, ЇаЁзҐ¬ Y2max = 24, в.Ґ. ЇаЁ Ў®«м讬 N
ЁбЇ®«м§гҐвбп Їа®ЄагвЄ . ‡ Ј®«®ў®Є ¬Ґ­о в Є¦Ґ ­Ґ ®Ўп§ вҐ«Ґ­.
‚ҐавЁЄ «м­®Ґ ¬Ґ­о б Їа®Ё§ў®«м­л¬Ё Їг­Єв ¬Ё. €§г祭ЁҐ Є®¬ ­¤
®ЇЁб ­Ёп Ё  ЄвЁў жЁЁ ¬Ґ­о § ўҐаиЁ¬ а бᬮв७ЁҐ¬ Є®¬ ­¤л ®ЇЁб ­Ёп
Їг­Єв  ¬Ґ­о DEFINE BAR <Ќ®¬Ґа> OF <€¬п ¬Ґ­о> PROMPT <‚лаC> <ЋЇжЁЁ> .
’ҐЄбв Їг­Єв  § ¤ ­ бва®Є®© <‚лаC>. Џг­Євл а §¬Ґй овбп б®Ј« б­® <Ќ®¬Ґа ¬>
Ё ¤«п "§ Ї §¤лў ойЁе" Їг­Єв®ў १ҐаўЁаговбп ЇгбвлҐ бва®ЄЁ ¬Ґ­о, Ґб«Ё
в®«мЄ® ў ®ЇЁб ­ЁЁ ¬Ґ­о ­Ґ гЄ § ­  ®ЇжЁп RELATIVE. ЏаЁ нв®© ®ЇжЁЁ
Їг­Євл а §¬Ґй овбп Ї® Ї®ап¤Єг Ёе ®ЇЁб ­Ёп Є®¬ ­¤ ¬Ё DEFINE BAR, Ё
ў®§¬®¦­®бвм Ё§¬Ґ­Ёвм ҐЈ® ¤ ов «Ёим ®ЇжЁЁ нвЁе Є®¬ ­¤ BEFORE<‚лаN>,
AFTER<‚лаN> ("ЇҐаҐ¤ Їг­Єв®¬ <‚лаN>", "Ї®б«Ґ Їг­Єв  <‚лаN>").
ЏгбвлҐ бва®ЄЁ, Ґб«Ё ®­Ё ®бв «Ёбм ў ¬Ґ­о, ­Ґ ¬®Јгв Ўлвм ўлЎа ­л.
Џа®зЁҐ бва®ЄЁ ¬®Јгв ­ зЁ­ вмбп б "\" (§ ЇаҐв ўлЎ®а , б¬. Ї. 19.1).
‡ ЇаҐв ўлЎ®а  ®ЎҐбЇҐзЁў Ґв в Є¦Ґ ®ЇжЁп SKIP ў ®ЇЁб ­ЁЁ Їг­Єв .
ЋЇжЁп SKIP FOR <‚лаL> ॠ«Ё§гҐв гб«®ў­л© § ЇаҐв. Ќ ЇаЁ¬Ґа, Ґб«Ё
Їг­Єв ЇаҐ¤­ §­ зҐ­ ¤«п ¤Ґ©бвўЁ© б Ѓ„, ®вЄалв®© ў ®Ў« бвЁ "C", ®­Ё
 ўв®¬ вЁзҐбЄЁ Ў«®ЄЁаговбп б®Ј« б­® ®ЇЁб ­Ёо Їг­Єв  б ®ЇжЁҐ©
SKIP FOR Empty(DBF("C")), Є®Ј¤  Ѓ„ ­Ґв. ”г­ЄжЁп DBF() ў®§ўа й Ґв Ё¬п Ѓ„,
®вЄалв®© ў § ¤ ­­®© ®Ў« бвЁ, Ё«Ё Їгбвго бва®Єг.
Љ®¬ ­¤  ON SELECTION BAR <Ќ®¬Ґа> OF <€¬п ¬Ґ­о> <Љ®¬ ­¤ >
§ ¤ Ґв ॠЄжЁо ­  ўлЎ®а Їг­Єв , гЄ § ­­®Ј® <Ќ®¬Ґа®¬>. ЋЇаҐ¤Ґ«Ґ­ЁҐ
Їг­Єв  ¤®«¦­® ЇаҐ¤иҐбвў®ў вм Є®¬ ­¤Ґ ON SELECTION BAR.
ЏаЁ¬Ґа 19.4. ЋЇаҐ¤Ґ«Ё¬ ¬Ґ­о б 4 Їг­Єв ¬Ё, ЇаЁзҐ¬ 1-© - б § ЇаҐв®¬
­  ўлЎ®а,   2-© Ё 3-© - б гб«®ў­л¬ § ЇаҐв®¬, Ї®бЄ®«мЄг Ёе ¤Ґ©бвўЁп
ЇаҐ¤Ї®« Ј ов  ЄвЁў­го Ѓ„ ў ®Ў« бвЁ C. ‡ ЇаҐв ­  ўлЎ®а 1-Ј® Їг­Єв 
¬®¦­® Ўл«® ᤥ« вм ЎҐ§ ®ЇжЁЁ SKIP, § ЇЁб ў Їг­Єв Є Є "\ђЂЃЋ’Ђ б Ѓ„:".
Џг­Єв 3-© Ё¬ҐҐв Є®¬¬Ґ­в аЁ© (MESSAGE), ¤«п ўлў®¤  Є®в®а®Ј® Ї®
㬮«з ­Ёо ЁбЇ®«м§гҐвбп 24-п бва®Є . Ѓ«®ЄЁ Sorti Ё Upak ў ЇаЁ¬ҐаҐ ­Ґ
Ї®Є § ­л. ‚맮ў Ў«®Є  OpenBD гв®з­Ґ­ Ё¬Ґ­Ґ¬ д ©«  Men, Ї®бЄ®«мЄг
¤ ­­®Ґ ¬Ґ­о Ўг¤Ґв ЁбЇ®«м§®ў ­® ҐйҐ а § ў ¤агЈ®¬ ®Єа㦥­ЁЁ (Ї. 19.5).

* ”Ђ‰‹ MEN.PRG
SET TALK OFF
DO CrMenu && ‘®§¤ ­ЁҐ POPUP-¬Ґ­о Pmenu
CLEAR
ACTIVATE POPUP Pmenu
RELEASE POPUPS Pmenu && “­Ёз⮦Ґ­ЁҐ POPUP-¬Ґ­о
PROCEDURE CrMenu
DEFINE POPUP Pmenu TITLE "Џа®Ў­®Ґ ¬Ґ­о"
DEFINE BAR 3 OF Pmenu PROMPT "ЋвЄалвЁҐ (§ ЄалвЁҐ) Ѓ„" ;
MESSAGE "Ѓ §  - ў ®Ў« бвЁ C. ‡ ЄалвЁҐ Ѓ„ - Enter (ЎҐ§ ­ Ў®а  Ё¬Ґ­Ё)"
ON SELECTION BAR 3 OF Pmenu DO OpenBD IN Men
DEFINE BAR 4 OF Pmenu PROMPT "“Ї Є®ўЄ " SKIP FOR Empty(DBF("C"))
DEFINE BAR 2 OF Pmenu PROMPT "‘®авЁа®ўЄ " SKIP FOR Empty(DBF("C"))
DEFINE BAR 1 OF Pmenu PROMPT "ђЂЃЋ’Ђ ‘ Ѓ„:" SKIP
ON SELECTION BAR 2 OF Pmenu DO Sorti && ђҐ ЄжЁЁ ­  ᤥ« ­­л© ўлЎ®а
ON SELECTION BAR 4 OF Pmenu DO Upak
PROCEDURE OpenBD
@ 20,0 && Џ®«м§гҐ¬бп Є®¬ ­¤®©, зв®Ўл § ¤ вм бва®Єг нЄа ­ 
ACCEPT "‚ўҐ¤ЁвҐ Ё¬п Ў §л ¤ ­­ле" TO Imya && €бЇ®«м§гҐвбп 21-п бва®Є 
SELECT 3
USE &Imya
@ 21,0 && ЋзЁбвЄ  21-© бва®ЄЁ

ЋЎйЁҐ ®ЇжЁЁ Є®¬ ­¤ DEFINE POPUP Ё DEFINE BAR "Є®­ЄгаЁагов" (Єа®¬Ґ
®ЇжЁ© KEY). Ќ ЇаЁ¬Ґа, ®ЇжЁп MARK <‚лаC> гбв ­ ў«Ёў Ґв ¬ҐвЄг <‚лаC>,
Є®в®а®© б«Ґў  ®в¬Ґз Ґвбп ўлЎа ­­л© Їг­Єв (Ї® 㬮«з ­Ёо - ஬ЎЁЄ) ў
०Ё¬Ґ ¬­®¦Ґб⢥­­®Ј® ®вЎ®а . ‚ ®ЇЁб ­ЁЁ ¬Ґ­о ­ §­ з Ґвбп Ґ¤Ё­л©
бЁ¬ў®« <‚лаC> ¤«п ўбҐе Їг­Єв®ў, ­® Ґб«Ё ў ®ЇЁб ­ЁЁ Їг­Єв®ў гЄ § ­л
Ё­лҐ ¬ҐвЄЁ, в® Ё¬Ґ­­® ®­Ё Ё Ўг¤гв ЁбЇ®«м§®ў вмбп. ЋЇжЁп MESSAGE <‚лаC>
®ЇаҐ¤Ґ«пҐв Є®¬¬Ґ­в аЁ© Є ¬Ґ­о ў 楫®¬, Є®в®ал© § ¬Ґй Ґвбп
Є®¬¬Ґ­в аЁҐ¬ Є ўлЎа ­­®¬г Їг­Євг, Ґб«Ё Ё ў ®ЇЁб ­ЁЁ Їг­Єв  ¤ ­ 
нв  ®ЇжЁп. ЋЇжЁп COLOR (б¬. Ї. 15.7) ў DEFINE POPUP а бЇа®бва ­пҐв
¤Ґ©бвўЁҐ «Ёим ­  ⥠Їг­Євл ¬Ґ­о, ў ®ЇЁб ­ЁЁ Є®в®але ­Ґв в Є®© ¦Ґ ®ЇжЁЁ.
‚ ®ЇжЁЁ KEY <€¬п Є« ўЁиЁ>,<‚лаC> ­ §­ з Ґвбп "Ј®апз п" Є« ўЁи 
¤«п ўл§®ў  ¬Ґ­о (Їг­Єв  ¬Ґ­о). <‚лаC> гЄ §лў ов, Ґб«Ё ў ¬Ґ­о ҐҐ
­г¦­® ®Ў®§­ зЁвм б®Єа йҐ­ЁҐ¬ <‚лаC>, ­ ЇаЁ¬Ґа б®Єа йҐ­ЁҐ ^End § ¬Ґ­пҐв
Ctrl+End (нв® <€¬п Є« ўЁиЁ>). Љ Є Ё ў бЁб⥬­ле ¬Ґ­о, Ё¬п Є« ўЁиЁ
Ё«Ё б®Єа йҐ­ЁҐ ®в®Ўа ¦ Ґвбп ў бва®ЄҐ ўҐавЁЄ «м­®Ј® ¬Ґ­о бЇа ў .
Џа®зЁҐ ®ЇжЁЁ Є®¬ ­¤л DEFINE POPUP. ЋЇжЁп MULTI гбв ­ ў«Ёў Ґв
०Ё¬ ¬­®¦Ґб⢥­­®Ј® ®вЎ®а  (ЇаЁ¬Ґ­пҐвбп в®«мЄ® ў ¬Ґ­о, ®ЇЁб ­­®¬
б ЁбЇ®«м§®ў ­ЁҐ¬ DEFINE BAR). ‚ н⮬ ०Ё¬Ґ, зв®Ўл б®еа ­Ёвм ¬ҐвЄг
г а ­ҐҐ ўлЎа ­­®Ј® Їг­Єв , ЇаЁ¤Ґа¦Ёў ов Є« ўЁиг Shift ў ¬®¬Ґ­в
­ ¦ вЁп Є« ўЁиЁ Enter ¤«п ўлЎ®а  б«Ґ¤го饣®. ЏаЁ ЁбЇ®«м§®ў ­ЁЁ ०Ё¬ 
®Ўлз­® ­Ґ ЇаҐ¤гб¬ ваЁў ов "Ё­¤ЁўЁ¤г «м­го" ॠЄжЁо ­  ўлЎ®а Їг­Єв ,
  ®Ўа Ў влў ов Ёв®Ј ўлЎ®а , ўлпў«пп ўлЎа ­­лҐ Їг­Євл дг­ЄжЁҐ©
MrkBar(<€¬п ¬Ґ­о>, <Ќ®¬Ґа Їг­Єв >),
Є®в®а п ў®§ўа й Ґв .T. «Ёим ¤«п ўлЎа ­­ле Їг­Єв®ў.
Џ® 㬮«з ­Ёо ¬Ґ­о а §¬Ґй Ґвбп ў ®Є­Ґ ўл¤ зЁ (Ґб«Ё ®­® Ґбвм, Ё­ зҐ
- ­  нЄа ­Ґ). Њ®¦­® " ¤аҐб®ў вм" ҐЈ® ¤агЈ®¬г ®Є­г ®ЇжЁҐ© IN <ЋЄ­®>
Ё«Ё ўлўҐбвЁ ў­Ґ ®Є­  ўл¤ зЁ, гЄ § ў IN SCREEN.
ЋЇжЁп MARGIN ®ЎҐбЇҐзЁў Ґв Їа®ЎҐ«л бЇа ў  Ё б«Ґў  ®в ⥪бв  Їг­Єв :
б«Ґў  - ¤«п ¬ҐвЄЁ (Ё­ зҐ ¬ҐвЄ  ­ Є« ¤лў Ґвбп ­  1-© бЁ¬ў®«), бЇа ў 
- ¤«п ўҐавЁЄ «Ё, ­  Є®в®а®© ®Ў®§­ зҐ­  ®в­®бЁвҐ«м­ п Ї®§ЁжЁп ¬ аЄҐа 
­  ўбҐ¬ ¬­®¦Ґб⢥ Їг­Єв®ў ¬Ґ­о. ‚ҐавЁЄ «м ўлў®¤Ёвбп, Ґб«Ё § ¤ ­ 
®ЇжЁп SCROLL Ё ¬Ґ­о ­Ґ 㬥頥вбп ў ®Є­Ґ (­  нЄа ­Ґ).
ЋЇжЁп FOOTER <‚лаC> § ¤ Ґв ⥪бв <‚лаC>, а §¬Ґй Ґ¬л© ­  ­Ё¦­Ґ©
Ја ­ЁжҐ ¬Ґ­о, ў а §а뢥 а ¬ЄЁ. ‚ ЇаЁ¬ҐаҐ 19.4 ¬®¦­® Ўл«® Ўл ў н⮬
¬Ґб⥠㪠§ вм Ё¬п ¬Ґ­о: FOOTER "Pmenu". ЋЇжЁЁ COLOR Ё SHADOW Ї®¤®Ў­л
а бᬮв७­л¬ ў Ї. 18.3.
ЋЇжЁЁ Є®¬ ­¤л ACTIVATE POPUP. €е ўбҐЈ® зҐвлаҐ:
AT Y1,X1 § ¬Ґ­пҐв Є®®а¤Ё­ вл Y1,X1, § ¤ ­­лҐ пў­® Ё«Ё ­Ґпў­®
Є®¬ ­¤®© DEFINE POPUP;
BAR <Ќ®¬Ґа> ­ §­ з Ґв Їг­Єв ¬Ґ­о, ўл¤Ґ«пҐ¬л© ¬ аЄҐа®¬ ў ¬®¬Ґ­в
ЇҐаў®­ з «м­®Ј® ®в®Ўа ¦Ґ­Ёп ¬Ґ­о;
NOWAIT ®в¬Ґ­пҐв ЇаЁ®бв ­®ўЄг Їа®Ја ¬¬л, Є®в®а п ўлЇ®«­пҐвбп ¤®
®зҐаҐ¤­®© Є®¬ ­¤л, ᮧ¤ о饩 б®бв®п­ЁҐ ®¦Ё¤ ­Ёп (в®Ј¤  ¬Ґ­о Ё
ЁбЇ®«м§гҐвбп);
REST ЇаЁ¬Ґ­пҐвбп, Ґб«Ё ў ®ЇаҐ¤Ґ«Ґ­ЁЁ ¬Ґ­о ЁбЇ®«м§®ў ­  ®ЇжЁп
PROMPT FIELD, Ё гЄ §лў Ґв, зв® ўл¤Ґ«пҐ¬л© ¬ аЄҐа®¬ Їг­Єв Ўг¤Ґв
ᮮ⢥вбвў®ў вм ⥪г饩 § ЇЁбЁ Ѓ„ (Ї® 㬮«з ­Ёо - ЇҐаў®© § ЇЁбЁ).
“­Ёз⮦Ґ­ЁҐ POPUP-¬Ґ­о Ё Їг­Єв®ў ¬Ґ­о. Љ®¬ ­¤л.
Ќ Ў®а Є®¬ ­¤, а Ў®в ойЁе б POPUP-¬Ґ­о,  ­ «®ЈЁзҐ­ ­ Ў®аг Є®¬ ­¤
¤«п а Ў®вл б ®Є­ ¬Ё: CLEAR POPUPS г­Ёз⮦ Ґв ўбҐ POPUP-¬Ґ­о,  
RELEASE POPUP <‘ЇЁб®Є ¬Ґ­о> EXTENDED - в®«мЄ® ЇҐаҐзЁб«Ґ­­лҐ ў
<‘ЇЁбЄҐ>; Ї®¤зЁ­Ґ­­лҐ Ё¬ ¬Ґ­о (Ї®¤¬Ґ­о) г­Ёз⮦ овбп, «Ёим Ґб«Ё
гЄ § ­  ®ЇжЁп EXTENDED. ‘®еа ­Ґ­ЁҐ Ї®¤¬Ґ­о ¬®¦Ґв Ё¬Ґвм б¬лб«,
Ї®бЄ®«мЄг бгйҐбвўгов "Ј®апзЁҐ" Є« ўЁиЁ Ёе ўл§®ў . “­Ёз⮦Ґ­ЁҐ
¬Ґ­о ¬®¦Ґв Ўлвм ўлЇ®«­Ґ­® зҐаҐ§ ®Є­® Є®¬ ­¤ Ё ¤ ¦Ґ ў ¤агЈ®©
Їа®Ја ¬¬Ґ, Є®в®а п ¬®Ј«  в Є¦Ґ ҐЈ® ЁбЇ®«м§®ў вм.
Љ®¬ ­¤  RELEASE BAR <Ќ®¬Ґа Ё«Ё ALL> OF <€¬п ¬Ґ­о>
г­Ёз⮦ Ґв ®¤Ё­ гЄ § ­­л© <Ќ®¬Ґа®¬> Ё«Ё ўбҐ (ALL) Їг­Євл
§ ¤ ­­®Ј® ¬Ґ­о. „«п бЄалвЁп ¬Ґ­о ЇаЁ¬Ґ­пҐвбп Є®¬ ­¤ 
HIDE POPUP <‘ЇЁб®Є ¬Ґ­о Ё«Ё ALL> SAVE. ЋЇжЁп SAVE б®еа ­пҐв
­  нЄа ­Ґ ­Ґа Ў®зЁ© ®Ўа § ¬Ґ­о. ‘ЄалвЁҐ ¬Ґ­о ўлЇ®«­Ё¬® «Ёим Є Є
ॠЄжЁп ­  ўлЎ®а Їг­Єв , Ї®¤¬Ґ­о. ‚®ббв ­®ў«Ґ­ЁҐ бЄалв®Ј® ¬Ґ­о
ўлЇ®«­пҐв Є®¬ ­¤  SHOW POPUP <‘ЇЁб®Є ¬Ґ­о Ё«Ё ALL>. …б«Ё
¬Ґ­о ®ЇаҐ¤Ґ«Ґ­®, ­® ­Ґ  ЄвЁўЁа®ў ­®, ЇаЁ¬Ґ­Ґ­ЁҐ SHOW POPUP
ўлў®¤Ёв ­Ґа Ў®зЁ© ®Ўа § ¬Ґ­о ЎҐ§ ЇаЁ®бв ­®ўЄЁ Їа®Ја ¬¬л.
Љ®¬ ­¤  MOVE POPUP <€¬п ¬Ґ­о>  ­ «®ЈЁз­  Є®¬ ­¤Ґ MOVE WINDOW.
‡ ¤ ­ЁҐ 19.4. ђҐ «Ё§г©вҐ ЇаЁ¬Ґа 19.4 ­  ќ‚Њ, б®бв ўЁў
®вбгвбвўгойЁҐ Ў«®ЄЁ Sorti Ё Upak. ЋЇа®Ўг©вҐ ®ЇжЁЁ Є®¬ ­¤л
 ЄвЁў жЁЁ Ё ®ЇаҐ¤Ґ«Ґ­Ёп POPUP-¬Ґ­о.

19.5. €§гз Ґ¬ Ј®аЁ§®­в «м­лҐ dBASE-¬Ґ­о (BAR-¬Ґ­о).

•®вп Їг­Євл BAR-¬Ґ­о ¬®Јгв § ­Ё¬ вм ­  нЄа ­Ґ Їа®Ё§ў®«м­®Ґ
Ї®«®¦Ґ­ЁҐ, нвЁ ¬Ґ­о ­ §лў ов Ј®аЁ§®­в «м­л¬Ё. Џ®бЄ®«мЄг Ё¬ҐҐвбп
 ­ «®ЈЁп б।бвў ®ЇЁб ­Ёп ўҐавЁЄ «м­ле Ё Ј®аЁ§®­в «м­ле ¬Ґ­о,
Ё§«®¦Ґ­ЁҐ Ўг¤Ґв Єа вЄЁ¬. BAR-¬Ґ­о ®ЇЁблў Ґвбп Є®¬ ­¤®©
DEFINE MENU <€¬п ¬Ґ­о> <ЋЇжЁЁ>,
Ї®б«Ґ Є®в®а®© ®ЇЁблў овбп Їг­Євл ¬Ґ­о (PAD-Їг­Євл) Є®¬ ­¤ ¬Ё
DEFINE PAD <€¬п Їг­Єв > OF <€¬п ¬Ґ­о> PROMPT<‚ла C> <ЋЇжЁЁ>
(§ ¬ҐвЁ¬, зв® BAR-Їг­Єв ¬Ё ­ §лў ов Їг­Євл POPUP-¬Ґ­о).
‚ ®в«ЁзЁҐ ®в POPUP-¬Ґ­о Їг­Євл ®Ў®§­ зҐ­л ­Ґ ­®¬Ґа ¬Ё,   Ё¬Ґ­ ¬Ё
(¤«п ббл«®Є ­  ­Ёе ў ¤агЈЁе Є®¬ ­¤ е); <‚лаC> ЇаҐ¤бв ў«пҐв ⥪бв
Їг­Єв , ЁбЇ®«м§гҐ¬л© ў BAR-¬Ґ­о.
Џ®¤е®¤п Є Ї®бв஥­Ёо ЁҐа аеЁзҐбЄЁе ¬Ґ­о, § Ї®¬­Ё¬ ®ЎйҐҐ Їа ўЁ«®:
ббл« вмбп ¬®¦­® в®«мЄ® ­  Ё¬Ґ­  (­®¬Ґа ) а ­ҐҐ ®ЇЁб ­­ле Їг­Єв®ў,
Ё¬Ґ­  ®ЇЁб ­­ле ¬Ґ­о. ќвЁ¬ ®ЇаҐ¤Ґ«пҐвбп Ї®б«Ґ¤®ў вҐ«м­®бвм Є®¬ ­¤.
ЌҐ § ЇаҐйҐ­® зҐаҐ¤®ў вм Є®¬ ­¤л ®ЇЁб ­Ёп а §«Ёз­ле ¬Ґ­о. Љ ¬®¬Ґ­вг
 ЄвЁў жЁЁ ¬Ґ­о ҐЈ® ®ЇЁб ­ЁҐ ¤®«¦­® Ўлвм Ї®«­®бвмо § ўҐа襭®.
ЋЇжЁЁ Є®¬ ­¤ ®ЇЁб ­Ёп. …б«Ё Їг­Євл ¬Ґ­о ўлбв஥­л ў «Ё­Ґ©Єг, Ї®
Ј®аЁ§®­в «Ё, ®ЇЁб ­ЁҐ гЇа®й Ґвбп. Џ® 㬮«з ­Ёо BAR-¬Ґ­о § ­Ё¬ Ґв
­г«Ґўго бва®Єг ®Є­  Ё«Ё нЄа ­ . „«п ЇаЁ¤ ­Ёп BAR-¬Ґ­о бў®©бвў
бЁб⥬­®Ј® ¬Ґ­о ў DEFINE MENU ЁбЇ®«м§гов ®ЇжЁо BAR Ё«Ё
BAR AT LINE <Ќ®¬Ґа>, гЄ §лў п <Ќ®¬Ґа> бва®ЄЁ ¤«п а §¬ҐйҐ­Ёп ¬Ґ­о.
…б«Ё Їг­Євл а бЇ®« Ј ов Їа®Ё§ў®«м­®, ў ®ЇЁб ­ЁЁ Є ¦¤®Ј® ¤ ов ®ЇжЁо
AT Y1,X1 б Є®®а¤Ё­ в ¬Ё «Ґў®Ј® Єа п Їг­Єв . ЋЇжЁЁ IN<ЋЄ­®> (IN SCREEN),
KEY<€¬п Є« ўЁиЁ>, MARK, MESSAGE, COLOR ў ®ЇЁб ­ЁЁ BAR-¬Ґ­о ⥠¦Ґ,
зв® Ё ў ®ЇЁб ­ЁЁ POPUP-¬Ґ­о. ЋЇжЁЁ ў ®ЇЁб ­Ёпе PAD-Їг­Єв®ў Ї®¤®Ў­л
®ЇжЁп¬ ў ®ЇЁб ­Ёпе BAR-Їг­Єв®ў (б¬. ўлиҐ).
Љ®¬ ­¤л  ЄвЁў жЁЁ, ¤Ґ ЄвЁў жЁЁ, г­Ёз⮦Ґ­Ёп, бЄалвЁп BAR-¬Ґ­о
Ї® бў®Ґ¬г ¤Ґ©бвўЁо ­Ґ ®в«Ёз овбп ®в Є®¬ ­¤ ¤«п POPUP-¬Ґ­о,   ў Ёе
§ ЇЁбЁ б«®ў® POPUP(S) § ¬Ґ­Ґ­® ­  MENU(S), ­ ЇаЁ¬Ґа CLEAR MENUS
- г­Ёз⮦Ґ­ЁҐ ўбҐе BAR-¬Ґ­о. ‚ Є®¬ ­¤Ґ ACTIVATE MENU <€¬п ¬Ґ­о>,
Єа®¬Ґ ®ЇжЁЁ NOWAIT, ЁбЇ®«м§гҐвбп ®ЇжЁп PAD <€¬п Їг­Єв , ўл¤Ґ«пҐ¬®Ј®
¬ аЄҐа®¬>.
ђҐ ЄжЁп ¬Ґ­о ­  ўлЎ®а Їг­Єв®ў ®д®а¬«пҐвбп  ­ «®ЈЁз­® ⮬г,
Є Є н⮠ᤥ« ­® ў POPUP-¬Ґ­о:
 ) ON SELECTION MENU <€¬п BAR-¬Ґ­о> <Љ®¬ ­¤ > && ЋЎ®ЎйҐ­­ п ॠЄжЁп
Ў) ON SELECTION PAD <€¬п Їг­Єв > OF<€¬п ¬Ґ­о> <Љ®¬ ­¤ >.
” ЄвЁзҐбЄЁ, а §­Ёж  ў аЁ ­в®ў " " Ё "Ў" ¬®¦Ґв ўла §Ёвмбп «Ёим
ў "а бд б®ўЄҐ" ¤Ґ©бвўЁ©: ў Ў«®Є "®Ў®ЎйҐ­­®© ॠЄжЁЁ" ¬®¦­® ЇҐаҐ¤ вм
­®¬Ґа Pad() ўлЎа ­­®Ј® Їг­Єв  Ё 㦥 ў­гваЁ Ў«®Є  ®ЇаҐ¤Ґ«пвм
Ё­¤ЁўЁ¤г «м­лҐ ॠЄжЁЁ ­  ўлЎ®а в®Ј® Ё«Ё Ё­®Ј® Їг­Єв .
‚맮ў Ї®¤¬Ґ­о Ё§ POPUP- Ё BAR-¬Ґ­о. ‚맮ўл Ї®¤¬Ґ­о  ­ «®ЈЁз­л:
ON BAR <Ќ®¬Ґа> OF <€¬п POPUP-¬Ґ­о> <Љ®¬ ­¤   ЄвЁў жЁЁ Ї®¤¬Ґ­о> ,
ON PAD <€¬п Їг­Єв > OF <€¬п BAR-¬Ґ­о> <Љ®¬ ­¤   ЄвЁў жЁЁ Ї®¤¬Ґ­о> .
‘ Ёе Ї®¬®ймо Ё§ POPUP- Ё«Ё BAR-¬Ґ­о ¬®¦­® ўл§лў вм ¬Ґ­о «оЎ®Ј® Ё§
¤ ­­ле Є« бб®ў.
ЏаЁ ўлЎ®аҐ Їг­Єв  ў BAR-¬Ґ­о  ўв®¬ вЁзҐбЄЁ ®в®Ўа ¦ Ґвбп Ё
§ ЄаҐЇ«Ґ­­®Ґ §  нвЁ¬ Їг­Єв®¬ ўҐавЁЄ «м­®Ґ Ї®¤¬Ґ­о. ‚ ®вбгвбвўЁҐ
Є®®а¤Ё­ в ў ®ЇЁб ­ЁЁ Ї®¤¬Ґ­о Ї®б«Ґ¤­ЁҐ  ўв®¬ вЁзҐбЄЁ а §¬Ґй овбп Ї®¤
ᮮ⢥вбвўгойЁ¬Ё PAD-Їг­Єв ¬Ё.
Љ®¬ ­¤г  ЄвЁў жЁЁ ¬Ґ­о ¬®¦­® гЄ §лў вм Є Є ॠЄжЁо Ё ў Є®¬ ­¤ е
ON SELECTION ... , ў н⮬ б«гз Ґ ®в®Ўа ¦Ґ­ЁҐ Ї®¤¬Ґ­о Їа®Ёб室Ёв
Ї®б«Ґ ­ ¦ вЁп Enter. ЏаЁ «оЎ®¬ ў аЁ ­вҐ Ї®¤Є«о祭Ёп Ї®¤¬Ґ­о ҐЈ®
§ ЄаҐЇ«Ґ­ЁҐ §  PAD- Ё«Ё BAR-Їг­Єв®¬ ¬®¦­® ®в¬Ґ­Ёвм, ўлЇ®«­Ёў Є®¬ ­¤г
ON ... Ї®ўв®а­® ЎҐ§ гЄ § ­Ёп ў ­Ґ© Є®¬ ­¤л  ЄвЁў жЁЁ Ї®¤¬Ґ­о.
ЏаЁ¬Ґа 19.5. ‘®§¤ ¤Ё¬ ¤ўгега®ў­Ґў®Ґ ¬Ґ­о DvuMe, § Ё¬бвўгп ®ЇаҐ¤Ґ«Ґ­Ёп
ўҐавЁЄ «м­ле ¬Ґ­о Ё§ ЇаЁ¬Ґа®ў 19.3, 19.4:
DEFINE MENU DvuMe
DO TriPup IN Primer && ‘®§¤ Ґ¬ ®ЇаҐ¤Ґ«Ґ­Ёп 3 ўҐавЁЄ «м­ле ¬Ґ­о
DO CrMenu IN Men && ‘®§¤ Ґ¬ ®ЇаҐ¤Ґ«Ґ­ЁҐ ўҐавЁЄ «м­®Ј® ¬Ґ­о Pmenu
DEFINE PAD Progrm OF DvuMe PROMPT "ЋЎ§®а Їа®Ја ¬¬"
DEFINE PAD Struct OF DvuMe PROMPT "‘вагЄвга  Ѓ„"
DEFINE PAD BasaDn OF DvuMe PROMPT "‡ ЇЁбЁ Ѓ„"
DEFINE PAD MenuBD OF DvuMe PROMPT "ђ Ў®в  б Ѓ„"
ON PAD Progrm OF DvuMe ACTIVATE POPUP Prog && ЏаЁўп§Є  Ї®¤¬Ґ­о
ON PAD Struct OF DvuMe ACTIVATE POPUP Struc && Є PAD-Їг­Єв ¬
ON PAD BasaDn OF DvuMe ACTIVATE POPUP Basa
ON PAD MenuBD OF DvuMe ACTIVATE POPUP Pmenu
ACTIVATE MENU DvuMe
RELEASE MENUS DvuMe EXTENDED && “­Ёз⮦Ґ­ЁҐ ў б Ґ е ¬Ґ­о
‡ ¬ҐвЁ¬, зв® Є®¬ ­¤  ®вЄалвЁп Ѓ„ ­Ґ ЇаҐ¤гᬮв७ . ќв® ­Ґ ®иЁЎЄ :
гб«®ў­®Ј® § ЇаҐв  ўлЎ®а  Їг­Єв®ў, ЁбЇ®«м§гойЁе Ѓ„ (б¬. ЇаЁ¬Ґа 19.4),
­Ґ ᤥ« ­®. ЏаЁ ўлЇ®«­Ґ­ЁЁ в Є®Ј® Їг­Єв   ўв®¬ вЁзҐбЄЁ ЇаҐ¤кпў«пҐвбп
®Є­® Open, зв®Ўл ¬л ¬®Ј«Ё ўлЎа вм Ё ®вЄалвм ­г¦­го Ѓ„.
‡ ЇгбЄ Ґ¬ Їа®Ја ¬¬г, ¬л ®Ў­ аг¦Ё¬ ­Ґг¤®Ў­®Ґ а бЇ®«®¦Ґ­ЁҐ Ї®¤¬Ґ­о
Struc Ё Basa; Є®®а¤Ё­ вл ¦ҐбвЄ® § ¤ ­л ў Ёе ®ЇЁб ­ЁЁ. Џ®ЇлвЄ  ¤®Ў ўЁвм
­г¦­лҐ Є®®а¤Ё­ вл ў Є®¬ ­¤л  ЄвЁў жЁЁ гбЇҐе  ­Ґ ¤ Ґв (­Ґ¤®а Ў®вЄ 
ЁбЇ®«м§гҐ¬®© ўҐабЁЁ FOXPRO). ‡ ¬Ґ­пҐ¬ Є®¬ ­¤л ON PAD, ­ ЇаЁ¬Ґа
ON SELECTION PAD Struct ACTIVATE POPUP Struc AT 2,17 .
Џ®¤¬Ґ­о а бЇ®« Ј овбп ­  ­®ўле ¬Ґбв е.
‡ ¤ ­ЁҐ 19.5. ђҐ «Ё§гп ЇаЁ¬Ґа 19.5 ­  ќ‚Њ (б гзҐв®¬ Ї®б«Ґ¤­ҐЈ®
Ё§¬Ґ­Ґ­Ёп), ®Їа®Ўг©вҐ ®ЇжЁЁ Є®¬ ­¤ ®ЇЁб ­Ёп BAR-¬Ґ­о Ё Є®¬ ­¤л
 ЄвЁў жЁЁ ¬Ґ­о. ЋЇЁиЁвҐ Їг­Єв ¬Ґ­о ¤«п ¤Ґ ЄвЁў жЁЁ ¬Ґ­о.

19.6. ђ бб¬ ваЁў Ґ¬ б।бвў  ЁҐа аеЁзҐбЄЁе ¬Ґ­о

”г­ЄжЁЁ ॣЁбва жЁЁ  ЄвЁў­®Ј® ¬Ґ­о Ё ўлЎ®а . ’ Є ¬л ­ §ў «Ё
дг­ЄжЁЁ, §­ зҐ­Ёп Є®в®але ®ва ¦ ов ⥪гйго бЁвг жЁо ў бЁб⥬Ґ ¬Ґ­о;
ў®§ўа й Ґ¬лҐ дг­ЄжЁп¬Ё бва®ЄЁ ᮤҐа¦ в Їа®ЇЁб­лҐ ЎгЄўл:
Popup() ( Menu() ) ў®§ўа й Ґв бва®Єг б Ё¬Ґ­Ґ¬  ЄвЁў­®Ј® POPUP- (BAR-)¬Ґ­о;
Bar() ( Pad() ) ў®§ўа й Ґв ­®¬Ґа (Ё¬п) ўлЎа ­­®Ј® Їг­Єв  POPUP- (BAR-)¬Ґ­о;
Prompt() ў®§ўа й Ґв бва®Єг - ⥪бв ўлЎа ­­®Ј® Їг­Єв   ЄвЁў­®Ј® ¬Ґ­о
(ў ЁҐа аеЁзҐбЄЁе ¬Ґ­о - ⥪бв Їг­Єв , ўлЎа ­­®Ј® Ї®б«Ґ¤­Ё¬);
MrkBar("<€¬п POPUP-¬Ґ­о>", <Ќ®¬Ґа>) Ё MrkPad("<€¬п BAR-¬Ґ­о>",
"<€¬п Їг­Єв >") ў®§ўа й ов .T., Ґб«Ё § ¤ ­­л© Їг­Єв гЄ § ­­®Ј® ¬Ґ­о
Ї®¬ҐзҐ­ Є Є ўлЎа ­­л© ЇаЁ ¬­®¦Ґб⢥­­®¬ ®вЎ®аҐ;
CntBar("<€¬п POPUP-¬Ґ­о>") Ё CntPad("<€¬п BAR-¬Ґ­о>") ў®§ўа й ов зЁб«®
Їг­Єв®ў ў гЄ § ­­®¬ ¬Ґ­о (­®¬Ґа Ї®б«Ґ¤­ҐЈ® Їг­Єв  ў POPUP-¬Ґ­о).
“Є § ­­лҐ дг­ЄжЁЁ ®Ўлз­® ЁбЇ®«м§говбп ў Є зҐб⢥ д ЄвЁзҐбЄЁе
Ї а ¬Ґва®ў ў ®Ўа йҐ­ЁЁ Є Ў«®Єг ®Ўа Ў®вЄЁ ўлЎ®а  Ё«Ё ў Є®¬ ­¤Ґ ॠЄжЁЁ
­  ўлЎ®а, Є Є н⮠ᤥ« ­® ў ЇаЁ¬ҐаҐ 19.3. ”г­ЄжЁЁ MrkBar(), MrkPad(),
CntBar(), CntPad() ¬®Јгв Ўлвм ЁбЇ®«м§®ў ­л ЇаЁ а Ў®вҐ ў ¤агЈЁе ¬Ґ­о,
ў­Ґ бЁбвҐ¬л ¬Ґ­о Ё ¤ ¦Ґ ў ¤агЈ®© Їа®Ја ¬¬Ґ, Ґб«Ё ¬Ґ­о ҐйҐ ­Ґ г­Ёз⮦Ґ­л.
Ќ ЇаЁ¬Ґа, ¬­®¦Ґб⢥­­л© ®вЎ®а, ®бгйҐбвў«Ґ­­л© ў ®¤­®¬ ¬Ґ­о, ¬®¦Ґв
Ўлвм ®б­®ў ­ЁҐ¬ ®Ўа Ў®вЄЁ ¤ ­­ле ў ¤агЈ®¬. ‚§ Ё¬®бўп§Ё ¬Ґ­о ў
ЁҐа аеЁзҐбЄ®© бЁб⥬Ґ ¬Ґ­о ¬®Јгв Ўлвм ¤®бв в®з­® б«®¦­л¬Ё. ‚ з бв­®бвЁ,
१г«мв в ўлЇ®«­Ґ­Ёп Ё«Ё б ¬ д Єв ўлЇ®«­Ґ­Ёп ॠЄжЁЁ ­  ўлЎ®а ў ®¤­®¬
¬Ґ­о ¬®¦Ґв Ўлвм ЇаЁзЁ­®© а §аҐиҐ­Ёп (§ ЇаҐв ) ўлЎ®а  ў ¤агЈ®¬.
Ќ ЇаЁ¬Ґа, Ґб«Ё ­Ґ ®вЄалв  Ѓ„, ­Ґ«м§п ўлЇ®«­пвм б ­Ґ© ¤Ґ©бвўЁп.
Ља®¬Ґ ў®§¬®¦­®бвЁ д®а¬Ёа®ў ­Ёп ®Ў«ЁЄ  ¬Ґ­о Ї® гб«®ўЁп¬ ў
®ЇаҐ¤Ґ«Ґ­Ёпе Їг­Єв®ў (­ ЇаЁ¬Ґа: DEFINE BAR ... OF ... PROMPT
Iif(B, "Џ®а®¦¤Ґ­ЁҐ", "ђ биЁаҐ­ЁҐ") ), Є®в®а®Ґ Їа®Ёб室Ёв ў ¬®¬Ґ­в
ЇҐаў®­ з «м­®©  ЄвЁў жЁЁ ¬Ґ­о, Ё¬ҐҐвбп ў®§¬®¦­®бвм Ё§¬Ґ­Ґ­Ёп ®Ў«ЁЄ 
Їг⥬ ЇҐаҐ®ЇаҐ¤Ґ«Ґ­Ёп Їг­Єв®ў Ў«®Є ¬Ё ®Ўа Ў®вЄЁ ўлЎ®а  ў Ё§¬Ґ­пҐ¬®¬
Ё«Ё Ё­®¬ ¬Ґ­о: Ї®ўв®а­® ўлЇ®«­пҐвбп Є®¬ ­¤  DEFINE BAR.
€¬Ґовбп бЇҐжЁ «м­лҐ Є®¬ ­¤л а §аҐиҐ­Ёп (§ ЇаҐйҐ­Ёп) ¤®бвгЇ  Є ¬Ґ­о
Ё Їг­Єв ¬ ¬Ґ­о: SET SKIP OF MENU <€¬п ¬Ґ­о> <‚лаL> ,
SET SKIP OF POPUP <€¬п ¬Ґ­о> <‚лаL> ,
SET SKIP OF PAD <€¬п Їг­Єв > OF<€¬п BAR-¬Ґ­о> <‚лаL> ,
SET SKIP OF BAR <Ќ®¬Ґа Їг­Єв > OF<€¬п POPUP-¬Ґ­о><‚лаL>,
Є®в®алҐ ®ЎҐбЇҐзЁў ов ¤®бвгЇ, в®«мЄ® Ґб«Ё <‚лаL> = .F.. ‚Є«о祭ЁҐ нвЁе
Є®¬ ­¤ ў Ў«®ЄЁ ®Ўа Ў®вЄЁ ўлЎ®а  ­ ¤Ґ«пҐв ¬Ґ­о "н«Ґ¬Ґ­в ¬Ё б ¬®б®§­ ­Ёп".
‘­пвЁҐ в Є®© Ў«®ЄЁа®ўЄЁ ўлЇ®«­пв нвЁ ¦Ґ Є®¬ ­¤л, Ґб«Ё ў Є зҐб⢥ <‚лаL>
§ ЇЁб вм .F.. Ќ Їа®вЁў, § ЇЁбм .T. ЎҐ§гб«®ў­® ўлЄ«оз Ґв ¤®бвгЇ.
ђ бᬮваЁ¬ ў®§¬®¦­лҐ ў аЁ ­вл ®Ўа Ў®вЄЁ ўлЎ®а  ­  ЇаЁ¬ҐаҐ POPUP-¬Ґ­о.
 )"ђ §®ўл©" ўлЎ®а Їг­Єв  ЇаҐ¤гб¬ ваЁў Ґвбп б«Ґ¤гойЁ¬ ®ЇЁб ­ЁҐ¬ ॠЄжЁЁ:
ON SELECTION POPUP <€¬п ¬Ґ­о> DEACTIVATE POPUP .
Џ®б«Ґ  ЄвЁў жЁЁ ¬Ґ­о Ё ўлЇ®«­Ґ­Ёп ўлЎ®а  ®­® ба §г ¦Ґ ¤Ґ ЄвЁўЁагҐвбп.
ЏаҐ¤Ї®« Ј Ґвбп, зв® ®Ўа Ў®вЄ  ўлЎ®а  Ё¤Ґв ў Їа®Ја ¬¬Ґ Ї®б«Ґ Є®¬ ­¤л
ACTIVATE POPUP. „«п ®ЇаҐ¤Ґ«Ґ­Ёп ўлЎа ­­®Ј® Їг­Єв  ЁбЇ®«м§гҐвбп дг­ЄжЁп
Bar() Ё«Ё Prompt().
Ў) ON SELECTION POPUP <€¬п ¬Ґ­о Ё«Ё ALL> DO <€¬п Ў«®Є > .
‚ᥠЇг­Євл гЄ § ­­®Ј® ¬Ґ­о Ё«Ё Є ¦¤®Ј® (ALL) ¬Ґ­о, Є®Ј¤  ®­®  ЄвЁў­®,
®Ўа Ў влў овбп ў ®¤­®¬ Ў«®ЄҐ, Ј¤Ґ, Єа®¬Ґ дг­ЄжЁ© Bar() Ё Prompt(),
ў®§¬®¦­® ЁбЇ®«м§®ў ­ЁҐ дг­ЄжЁЁ Popup() ¤«п а §«ЁзҐ­Ёп ¬Ґ­о.
ў) ‘®зҐв ­ЁҐ "г­ЁдЁжЁа®ў ­­®©" Ё Ё­¤ЁўЁ¤г «м­®© ®Ўа Ў®вЄЁ ўлЎ®а 
Їг­Єв®ў (®ЇЁблў Ґвбп Ї®б«Ґ ®ЇаҐ¤Ґ«Ґ­Ёп ¬Ґ­о Ё ҐЈ® Їг­Єв®ў):
ON SELECTION POPUP <€¬п ¬Ґ­о> DO <€¬п "г­ЁдЁжЁа®ў ­­®Ј®" Ў«®Є >
ON SELECTION BAR 1 OF <€¬п ¬Ґ­о> DO <€¬п Ў«®Є 1> && Ќ®¬Ґа  Їг­Єв®ў
ON SELECTION BAR 2 OF <€¬п ¬Ґ­о> DO <€¬п Ў«®Є 2> && ¬®Јгв Ўлвм Ё­л¬Ё
ON SELECTION BAR 3 OF <€¬п ¬Ґ­о> ACTIVATE POPUP . . .
„®ЇгбвЁ¬, зв® ¤«п Їг­Єв®ў 4, 5 Ё в.¤. ®Ўа Ў®вЄ  ўлЎ®а  Ё­¤ЁўЁ¤г «м­®
­Ґ § ¤ ­ . €¬Ґ­­® ¤«п ­Ёе Ё ЇаҐ¤гᬮв७ "г­ЁдЁжЁа®ў ­­л©" Ў«®Є, ­Ґ
ЁбЇ®«м§гҐ¬л© Їг­Єв ¬Ё 1 - 3, Ё¬ҐойЁ¬Ё ®в¤Ґ«м­лҐ ­ §­ зҐ­Ёп. Џ®-ЇаҐ¦­Ґ¬г
¤Ґ©бвўгҐв Їа ўЁ«®: Ў®«ҐҐ Ї®§¤­ҐҐ гЄ § ­ЁҐ - "бЁ«м­ҐҐ".

‡ЂЉ‹ћ—…Ќ€… Љ ѓ‹Ђ‚… 19

ђ §ўЁвлҐ Ё§®Ўа §ЁвҐ«м­лҐ б।бвў  Ё, ў з бв­®бвЁ, ¬Ґ­о пў«повбп
бЁ«м­®© бв®а®­®© FOXPRO. ‚ и  ЇаЁўп§ ­­®бвм Є FOXPRO ­Ґб®¬­Ґ­­®
®ЄаҐЇ­Ґв Ї®б«Ґ ­ҐЄ®в®а®© Їа ЄвЁЄЁ ў ЁбЇ®«м§®ў ­ЁЁ ¬Ґ­о. ђҐЄ®¬Ґ­¤гҐ¬
ў ¬ ба §г ®бў®Ёвмбп б dBASE-¬Ґ­о, Є Є Ў®«ҐҐ Їа®ЈаҐббЁў­®© Ёе
а §­®ўЁ¤­®бвмо. ЌҐ ᮦ «Ґ©вҐ ® ўаҐ¬Ґ­Ё, Ї®ва зҐ­­®¬ ­  Ё§г祭ЁҐ
FOX-¬Ґ­о: ­Ґ ЁбЄ«о祭®, зв® ў з㦮© Їа®Ја ¬¬Ґ, Є®в®а п ў ¬ Ё­вҐаҐб­ ,
®­Ё ЁбЇ®«м§говбп. Џ®­Ё¬ ­ЁҐ Ёе бгвЁ ­Ґ Ї®¬Ґи Ґв.
Соседние файлы в папке материалы по FoxPro