Advertisement
timscampi

frame.lib

Oct 17th, 2011
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.97 KB | None | 0 0
  1. procedure frame(x,y,xmax,ymax : byte; double : boolean;color : byte);
  2. {***** Encadre la zone délimitée entre (x,y) et (xmax,ymax) *****}
  3. {***** frame(x,y,xmax,ymax,true,15); créera un encadrement double blanc *****}
  4. var tracex, tracey : byte;
  5. const fArray : array[1..12] of char =
  6.     (#201,#187,#200,#188,#186,#205,#218,#191,#192,#217,#179,#196);
  7.     {*** LEGEND :
  8.     ╔ = fArray[1]
  9.     ╗ = fArray[2]
  10.     ╚ = fArray[3]
  11.     ╝ = fArray[4]
  12.     ║ = fArray[5]
  13.     ═ = fArray[6]
  14.     ┌ = fArray[7]
  15.     ┐ = fArray[8]
  16.     └ = fArray[9]
  17.     ┘ = fArray[10]
  18.     │ = fArray[11]
  19.     ─ = fArray[12]
  20.     ***}
  21. begin
  22.         // Top
  23.         textcolor(color);  
  24.         gotoxy(x,y);
  25.         if double then
  26.             write(fArray[1])
  27.         else
  28.             write(fArray[7]);
  29.         for tracex := x+1 to xmax-1 do
  30.             begin
  31.                 gotoxy(tracex,y);
  32.                 if double then
  33.                     write(fArray[6])
  34.                 else
  35.                     write(fArray[12]);
  36.             end;
  37.         gotoxy(xmax,y);
  38.         if double then
  39.             write(fArray[2])
  40.         else
  41.             write(fArray[8]);
  42.         // Bottom
  43.         gotoxy(x,ymax);
  44.         if double then
  45.             write(fArray[3])
  46.         else
  47.             write(fArray[9]);  
  48.         for tracex := x+1 to xmax-1 do
  49.             begin
  50.                 gotoxy(tracex,ymax);
  51.                 if double then
  52.                     write(fArray[6])
  53.                 else
  54.                     write(fArray[12]);
  55.             end;
  56.         gotoxy(xmax,ymax);
  57.         if double then
  58.             write(fArray[4])
  59.         else
  60.             write(fArray[10]);
  61.         // Left
  62.         for tracey := y+1 to ymax-1 do
  63.             begin
  64.                 gotoxy(x,tracey);
  65.                 if double then
  66.                     write(fArray[5])
  67.                 else
  68.                     write(fArray[11]);
  69.             end;
  70.         // Right
  71.         for tracey := y+1 to ymax-1 do
  72.             begin
  73.                 gotoxy(xmax,tracey);
  74.                 if double then
  75.                     write(fArray[5])
  76.                 else
  77.                     write(fArray[11]);
  78.             end;
  79.         textcolor(15);
  80. end;
  81.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement