Добавил:
Tushkan
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:БД книги 2 / материалы по FoxPro / GL19
.PAS ѓ‹Ђ‚Ђ 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 ЇаҐ¤®бв ў«пҐв б।бвў , ЁбЇ®«м§®ў лҐ ЇаЁ ᮧ¤ ЁЁ
бЁб⥬®Ј® ЁвҐа䥩б . ‚ Ї. 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