МНЛЕП БШАПЮММНИ НОЖХХ КХАН 0 ОПХ ОПЕПШБЮМХХ БШАНПЮ
Function SELOPT
parameters NOPT,MO,MC,ME,COLROW,ORIENT,SAYHELP,CLRS,CLRN,CSD local CL private NOPT, COUN, INDO, INDM, INDN, MO, MC, ME, COLROW, ORIENT, SAYHELP, CLRS, CLRN, STAT, KL, ROWMO, IN if pcount()<10 SHD=.F. else CSD="N"+substr(CSD,at("/",CSD)) SHD=.T. endif keyboard chr(0)
COLORN="R"+substr(CLRN,at("/",CLRN)) COLORS="R"+substr(CLRS,at("/",CLRS)) L_showcurs() NOPT=iif(NOPT=0,1,NOPT) && мНЛЕП МЮВЮКЭМНИ НОЖХХ ЛЕМЧ COUN=len(MO) && йНКХВЕЯРБН НОЖХИ store NOPT to INDO,INDN,INDM CL=setcolor() for IN=1 to COUN setcolor(CLRN) @ iif(ORIENT,MC[IN],COLROW),iif(ORIENT,COLROW,MC[IN]) ; SAY strtran(MO[IN],"~","") if (POS:=at("~",MO[IN]))>0 setcolor(COLORN) @ iif(ORIENT,MC[IN],COLROW),iif(ORIENT,COLROW+POS-1,MC[IN]+POS-1); SAY substr(MO[IN],POS+1,1) setcolor(CL) endif if SHD setcolor (CSD) @ iif(ORIENT,MC[IN]+1,COLROW+1),iif(ORIENT,COLROW+1,MC[IN]+1); SAY repl("-",len(strtran(MO[IN],"~",""))) @ iif(ORIENT,MC[IN],COLROW),iif(ORIENT,COLROW+; len(strtran(MO[IN],"~","")),MC[IN]+; len(strtran(MO[IN],"~",""))) SAY "-" setcolor(CL) endif NEXT COLMO=L_getxposn()/8 ROWMO=L_getyposn()/8 setcolor(CLRS) L_hidecurs() @ iif(ORIENT,MC[NOPT],COLROW),iif(ORIENT,COLROW,MC[NOPT]); SAY strtran(MO[NOPT],"~","") if (POS:=at("~",MO[NOPT]))>0 CL= setcolor(COLORS) @ iif(ORIENT,MC[NOPT],COLROW),iif(ORIENT,COLROW+POS-1,MC[NOPT]+POS-1) ; SAY substr(MO[NOPT],POS+1,1) setcolor(CL) endif if SAYHELP setcolor(At_M0_N) @ 24,(80-len(ME[INDN]))/2 SAY ME[INDN] endif L_showcurs() KEYPRESSED=.F. do while .T. COLMN=L_getxposn()/8 ROWMN=L_getyposn()/8 STAT=L_getmstat() KL=inkey() if KL>0 KEYPRESSED=.T. else KEYPRESSED=.F. endif if KL=13 L_hidecurs() return INDN endif if STAT=2.or.KL=27 if KL<>27 for TT=1 to COUN if iif(ORIENT,COLMN>=COLROW.and.COLMN<=COLROW+; len(strtran(MO[TT],"~","")).and.ascan(MC,ROWMN)<>0,; ROWMN=COLROW.and.COLMN>=MC[TT].and.COLMN<=MC[TT]+; len(strtran(MO[TT],"~",""))) L_hidecurs() return 0 endif next else L_hidecurs() return 0 endif endif if iif(ORIENT,(COLMN>=COLROW.AND.COLMN<=COLROW + ; len(strtran( MO[INDN],"~","")) .AND. ; ROWMN<>ROWMO).or.KEYPRESSED,(ROWMN=COLROW.AND.; COLMN<>COLMO).or.KEYPRESSED) T1=.F. if ORIENT.and.KL=0 TEST=ascan(MC,ROWMN) if TEST<>0 T1=.T. endif elseif .not.ORIENT.and.KL=0 TEST=INDO for TT=1 to COUN if COLMN>=MC[TT].and.COLMN<=MC[TT]+len(strtran(MO[TT],"~","")) TEST=TT T1=.T. exit endif next elseif KL>0 T1=.T. endif if T1 do case case KL=5.or.KL=19 INDN=iif(INDN=1,COUN,INDN-1) case KL=24.or.KL=4 INDN=iif(INDN=COUN,1,INDN+1) case KL>=32.and.KL<=255 STROKE="~"+chr(KL)+"~" for II=1 to COUN if at(STROKE,MO[II])<>0 INDN=II keyboard chr(13) exit endif next otherwise INDN=TEST endcase setcolor(CLRN) L_hidecurs() @ iif(ORIENT,MC[INDO],COLROW),iif(ORIENT,COLROW,MC[INDO]); SAY strtran(MO[INDO],"~","") if (POS:=at("~",MO[INDO]))>0 CL=setcolor(COLORN) @ iif(ORIENT,MC[INDO],COLROW),iif(ORIENT,COLROW+POS-1,MC[INDO]+; POS-1) SAY substr(MO[INDO],POS+1,1) setcolor(CL) endif if SAYHELP setcolor(At_M0_N) @ 24,(80-len(ME[INDN]))/2 SAY ME[INDN] endif setcolor(CLRS) @ iif(ORIENT,MC[INDN],COLROW),iif(ORIENT,COLROW,MC[INDN]); SAY strtran(MO[INDN],"~","") if (POS:=at("~",MO[INDN]))>0 setcolor(COLORS) @ iif(ORIENT,MC[INDN],COLROW),iif(ORIENT,COLROW+POS-1,MC[INDN]+POS-1) SAY substr(MO[INDN],POS+1,1) endif L_showcurs() INDO=INDN ROWMO=ROWMN COLMO=COLMN if STAT=0 loop endif endif elseif COLMN>=COLROW do case case STAT=1 for TT=1 to COUN if iif(ORIENT,COLMN>=COLROW.and.COLMN<=COLROW+; len(strtran(MO[TT],"~","")).and.ascan(MC,ROWMN)<>0,; ROWMN=COLROW.and.COLMN>=MC[TT].and.COLMN<=MC[TT]+; len(strtran(MO[TT],"~",""))) L_hidecurs() return INDN endif next case STAT=2 for TT=1 to COUN if iif(ORIENT,COLMN>=COLROW.and.COLMN<=COLROW+; len(strtran(MO[TT],"~","")).and.ascan(MC,ROWMN)<>0,; ROWMN=COLROW.and.COLMN>=MC[TT].and.COLMN<=MC[TT]+; len(strtran(MO[TT],"~",""))) L_hidecurs() return 0 endif next endcase endif enddo return 0 БЯОНЛНЦЮРЕКЭМШЕ ТСМЙЖХХ ТСМЙЖХЪ ОЕПЕЙКЧВЕМХЪ БХДЮ ЙСПЯНПЮ
Function FINS
FINSERT=.not.FINSERT readinsert(FINSERT) if setcursor()<>0 CUR_STYLE=iif(FINSERT,2,1) setcursor(CUR_STYLE) endif clear type return 0
ТСМЙЖХЪ ОЕПЕБНДЮ ЯРПНЙХ Б БЕПУМХИ ПЕЦХЯРП
Function UpperR(String) local SRC:={"Ю","А","Б","Ц","Д","Е","╦","Ф","Г","Х","И","Й","К","Л","М","Н","О","П","Я","Р","С","Т","У","Ж","В","Ь","Ы","Э","Ш","З","Щ","Ч","Ъ"," "},; DST:={"ю","а","б","ц","д","е","╗","ф","г","х","и","й","к","л","м","н","о","п","я","р","с","т","у","ж","в","ь","ы","э","ш","з","щ","ч","ъ"," "},; STR:="",KEY:="",INDEXKEY,I for I=1 to len(STRING) KEY=substr(STRING,I,1) if (INDEXKEY:=ascan(SRC,KEY))<>0 STR=STR+DST[INDEXKEY] else STR=STR+KEY endif next return STR
Популярное: Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы... Как построить свою речь (словесное оформление):
При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою... Почему стероиды повышают давление?: Основных причин три... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (274)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |