
06.06.2009, 19:52
|
|
Познающий
Регистрация: 26.01.2007
Сообщений: 40
С нами:
10152062
Репутация:
7
|
|
открываю поле ред-ия, но в первое поле не вписываются данные, в последующие разы редактирования нормально
Код:
{<<<<<<<<<<<<<<<<<<<<<<<<<<<ПРОЦЕДУРА РЕДАКТИРОВАНИЯ ЗАПИСИ}
procedure Edit(id : integer); {Редактирует заданую строку key[i2]}
var
i:integer;
namew,adresw,numberw,indexw,ide:string;
nk,ak,nmk,ik:char;
begin
Size:= ImageSize(200,100,500,300);
GetMem(p,size);
GetImage(200,100,500,300,p^);
SetFillStyle(0,9);
Bar(200,100,500,300);
SetFillStyle(1,9);
Rectangle(205,105,495,295);
SetColor(15);
Globalindex:=Globalindex+1;
OutTextXY(220,115,' Edit...');
SetTextStyle(2,0,2);
OutTextXY(220,160,'Name:');
OutTextXY(220,190,'Adres:');
OutTextXY(220,220,'Number:');
OutTextXY(220,250,'Index:');
str(id,ide);
OutTextXY(220,125,ide);
Rectangle(280,155,450,170);
SetFillStyle(SolidFill,9);
Bar(281,156,449,169);
Rectangle(280,185,450,200);
SetFillStyle(SolidFill,9);
Bar(281,186,449,199);
Rectangle(280,215,450,230);
SetFillStyle(SolidFill,9);
Bar(281,216,449,229);
Rectangle(280,245,450,260);
SetFillStyle(SolidFill,9);
Bar(281,246,449,259);
ts[id].surname:='';
ts[id].adres:='';
ts[id].number:=0;
ts[id].index:=0;
ClrBuf;
{---------------------------ИМЯ------------------------}
d:=1;
while d<>0 do
begin
nk:=ReadKey;
if (nk=#13) then
begin
ts[id].surname:=upstr(namew);
namew:='';
d:=0;
end
else
begin
case nk of
'a'..'z','A'..'Z',' ' :
begin
namew:=namew+nk;
SetColor(15);
OutTextXY (290,160,namew);
end;
#9 : d:=0;
end;
end;
end;
{\--------------------------ИМЯ------------------------}
d:=1;
while d<>0 do
begin
ak:=ReadKey;
if (ak=#13) then
begin
ts[id].adres:=upstr(adresw);
SetColor(15);
adresw:='';
d:=0;
end
else
begin
case ak of
'a'..'z','A'..'Z',' ','0'..'9' :
begin
adresw:=adresw+ak;
SetColor(15);
OutTextXY (290,190,adresw);
end;
#9 : d:=0;
end;
end;
end;
d:=1;
while d<>0 do
begin
nmk:=ReadKey;
if (nmk=#13) then
begin
Val(numberw,fn,qwe);
ts[id].number:=fn;
SetColor(15);
numberw:='';
d:=0;
end
else
begin
case nmk of
'0'..'9' :
begin
numberw:=numberw+nmk;
SetColor(15);
OutTextXY (290,220,numberw);
end;
#9 : d:=0;
end;
end;
end;
d:=1;
while d<>0 do
begin
ik:=ReadKey;
if (ik=#13) then
begin
Val(indexw,fn,qwe);
ts[id].index:=fn;
SetColor(15);
indexw:='';
d:=0;
end
else
begin
case ik of
'0'..'9' :
begin
indexw:=indexw+ik;
SetColor(15);
OutTextXY (290,250,indexw);
end;
#9 : d:=0;
end;
end;
end;
for i:=0 to High(st) do
begin
st[i]:=ts[i];
end;
PutImage(200,100,p^,0);
FreeMem(p,size);
SetTextStyle(0,0,0);
OutResult;
end;
{>>>>>>>>>>>>>>>>>>>>>>>>>>>>>ПРОЦЕДУРА ДОБАВЛЕНИЯ НОВОЙ ЗАПИСИ}
Последний раз редактировалось c0m; 06.06.2009 в 20:53..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|