Новичок
Группа: Пользователи
Сообщений: 10
Пол: Мужской
Реальное имя: артём
Репутация: 0
|
Прошу прощения что возвращаюсь к темже баранам. Тестил библиотека работает нормально а вот с использованием возникли проблемы и указывает на Graf :
[code = pas ] program NeoNMooNpaintVersionFORPascal ; uses crt,graph,dopforgr;
type TMatrix = array [0..99,0..99] of integer;
var cursor:array[0..99,0..99] of boolean ;
a,b:integer; x,y:integer; color:byte; name:string[8] ; graf:TMatrix ;
Procedure graphinit ; var gm,gd:integer; begin gm:=2; gd:=installuserdriver ('bgi256',nil); initGraph(gd,gm,' ');
if graphResult <> grOK then halt(1); end;
Procedure WrStr ; begin setcolor(150) ; moveto (401,0); lineto (401,401); lineto (0,401); moveto (401,40); lineto (480,40); SetTextStyle(DefaultFont, HorizDir, 1); ; outtextxy(410,10,'Welcome to') ; outtextxy(410,20,'NeoNMooN Paint for PASCAL') ; outtextxy(410,30,'Glykasoft & NeoNMooN studio') ; outtextxy(410,50,'You need Help? -> F1 ') ; end;
Procedure initcolor ; var color2:byte; begin for color2:=0 to 255 do begin setcolor(color2) ; rectangle(color2*2,460,color2*2,480); rectangle(color2*2+1,460,color2*2+1,480);
end; end;
Procedure nemLOAD ; var dlafor:integer; col:integer; s,d:byte; gFile:text ; begin col:=0; closegraph; write('Input name(8) file please: '); readln(name) ; assign(gFile, name +'.nem') ; reset(gFile) ; readln(gFile,name) ; readln(gFile,col) ; for dlafor:=0 to col do begin readln(gFile,d) ; readln(gFile,s) ; readln(gFile,graf[d,s]) end; close(gFile) ; graphinit; wrstr; initcolor; end;
Procedure text ; var printtext:string; begin
setfillstyle(0,0); bar(10,410,200,420); setcolor(10) ; outtextxy(10,410,'X='); str(a,printtext); outtextxy(30,410,printtext); outtextxy(50,410,'Y='); str(b,printtext); outtextxy(70,410,printtext); str(color,printtext); outtextxy(90,410,'COLOR -'); outtextxy(150,410,printtext);
end;
Procedure chek ; begin setcolor(color); setfillstyle(1,color); bar(2*(color-10),430,2*(color+10),455) ; rectangle(color*2,430,color*2,459) ;
for y:=0 to 99 do begin for x:=0 to 99 do begin if graf[x,y]<>0 then begin setcolor(graf[x,y]) ;rectangle(4*x+1,4*y+1,4*x+3,4*y+3); end; end; end;
setcolor(color); for y:=0 to 99 do begin for x:=0 to 99 do begin if cursor[x,y]=true then rectangle(4*x,4*y,4*x+4,4*y+4); end; end; end;
Procedure cursorinit ; var ch:char; begin
repeat
chek; text ; setcolor(0); ch := readkey;
case ch of #75:if a>0 then begin rectangle(4*a,4*b,4*a+4,4*b+4); a:=a-1; cursor[a+1,b]:=false; cursor[a,b]:=true; end; #77:if a<99 then begin rectangle(4*a,4*b,4*a+4,4*b+4);a:=a+1; cursor[a-1,b]:=false; cursor[a,b]:=true; end; #72:if b>0 then begin rectangle(4*a,4*b,4*a+4,4*b+4);b:=b-1; cursor[a,b+1]:=false; cursor[a,b]:=true; end; #80:if b<99 then begin rectangle(4*a,4*b,4*a+4,4*b+4);b:=b+1; cursor[a,b-1]:=false; cursor[a,b]:=true; end; #49:begin rectangle(2*(color+10),430,2*(color+10)-1,455) ;rectangle(color*2,430,color*2,459) ;color:=color-1;end; #51:begin rectangle(2*(color-10),430,2*(color-10)+1,455) ;rectangle(color*2,430,color*2,459) ;color:=color+1;end; #13:graf[a,b]:=color; #63:NEMSAVE('esd','nem', graf ); #66:nemLOAD;
{c #99:begin readln(color); end;}
else end; until ch = #27 ; end;
begin color:=1; cursor[0,0]:=true; graphinit; wrstr; initcolor; cursorinit;
closegraph; end.
[ /code ]
вобще тут много не относящегося к поблеме если в кратце то при компиляции указатель в строке #63:NEMSAVE('esd','nem', graf ); указывает на graf и пишет тип несовместим несмотря на то что graf также принадлежит TMatrix.
|