помогите написать программу: на екран должна выводиться папка, в той папке кнопками вверх вниз можна выбрать файл(курсор представлен рамкой вокруг слова), нажимаем энтэр и в левой части экрана выводиться содержимое этого файла.
я уже немного сделал но хз как сделать чтоб прямоугольник(типа курсор) наведённый на файл открывал его???:
Uses Crt,Graph,Dos;
label a;
Var Gd,Gm,x,y,w,w1,v,v1,n: Integer;
q,qq,s:string;
f:text;
c: file of Byte;
key:char;
DirInfo:searchRec;
Begin
n:=1;
Gd:=Detect;
InitGraph(Gd, Gm, '');
If GraphResult <> grOk Then Halt(1);
rectangle(1,1,639,479);
line(1,50,639,50);
line(320,1,320,479);
OUTTExtxy(3,25,'Папка:');
outtextxy(323,25,'Файл:');
begin
FindFirst('c:\video\*.*', Directory, DirInfo);{поиск сначала, путь и имя файла, атpибут файла, файл}
x:=10;y:=50;
while DosError = 0 do{цикл, пpовеpка на ошибки}
begin{начало блока}
if pos('.',DirInfo.Name)=0 then
begin
gotoxy(x,y);Writeln('['+DirInfo.Name+']');{вывести имя файла на екpан}
end
else
begin
if (DirInfo.Name<>'.')and(DirInfo.Name<>'..')then
begin
Assign(c, 'c:\video\'+DirInfo.Name);{инициализация файла}
{$i-}
Reset(c);{откpыть файл}
{$i+}
if ioresult<>0 then begin end else
begin
outtextxy(x,y,dirinfo.name);Writeln(DirInfo.Name);{вывести имя файла на екpан}
close(c);
end;
end;
end;
FindNext(DirInfo);{пеpейти на следующий файл}
y:=y+10;
if y>480 then begin y:=50;x:=x+22;end;
if x>320 then break;
end; {конец блока}
begin
setcolor(15);
w:=10;
v:=160;
w1:=160;
v1:=180;
rectangle(w,v,w1,v1);
a:
key:=readkey;
case key of
#80: begin
if v>480 then goto a;
setcolor(black);
rectangle(w,v,w1,v1);
v:=v+30;
w:=w;
w1:=w1;
v1:=v+30;
setcolor(15);
rectangle(w,v,w1,v1);
end;
#72: begin
if v<50 then goto a;
setcolor(black);
rectangle(w,v,w1,v1);
v:=v-30;
w:=w;
w1:=w1;
v1:=v1-30;
setcolor(15);
rectangle(w,v,w1,v1);
end;
#27: begin halt; end;
end;
readln;
goto a;
end;
end;
End.