|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 17.02.09 10:27. Заголовок: к примеру, что мне изменить тут:
/* Bd.dbf Field1: Name=Kod, Type=Numeric, Width=3 Field2: Name=Fio, Type=Character, Width=16 */ ================================================================= // Main.prg set deleted on set cursor off set scoreboard off cls use Bd new Edit_bd(2,14,20,65) close Bd ==================================================================== // Compile: /n static Met:={{5,{|Z|Z:up()}},{24,{|Z|Z:down()}},; {19,{|Z|Z:left()}},{4,{|Z|Z:right()}},; {18,{|Z|Z:pageup()}},{3,{|Z|Z:pagedown()}},; {1,{|Z|Z:gotop()}}, {6,{|Z|Z:gobottom()}}} proc Edit_bd(T,L,B,R) local Color:=setcolor('bg+/b,b/bg'),oB,nKey,Jmet,Scr,A Scr:=savescreen(T,L,B,R) @ T,L,B,R box "|=|||=|| " oB := TBrowseDB(T+1,L+1,B-1,R-1) oB:headSep:=".=" oB:colsep:="|" @ T,L+1 say 'ENTER=Edit, ESC=Exit, INS=Append Blank, DEL=Delete' color('r+/b') oB:addColumn(TBColumnNew('Kod',FieldBlock('Kod'))) oB:addColumn(TBColumnNew('Name_',FieldBlock('Fio'))) do while .t. do while nextkey()=0.and.!oB:stabilize() enddo nKey:=inkey(0) Jmet:=ascan(Met,{|Z|nKey=Z[1]}) iif(Jmet!=0,eval(Met[Jmet,2],oB),) do case case nKey=27 //ESC exit case nKey=13 //ENTER=redaktirovanie stroki A:=field(oB:colpos) set cursor on @ row(),col() get &A color('bg+/r') read set cursor off oB:refreshcurrent() case nKey=7 //DEL=udalenie stroki if alert('Delete?',{'N','Y'})=2 delete oB:refreshall() endif case nKey=22 //INS=dobavlenie stroki A:=' ' set cursor on @ B,L+1 say 'Name_:' get A color('bg+/r') read set cursor off @ B,L+1 say '==========================' if !empty(A) append blank fieldput(2,A) A:=recno() endif oB:gotop() go A oB:refreshall() endcase enddo setcolor(Color) restscreen(T,L,B,R,Scr) return
|