home *** CD-ROM | disk | FTP | other *** search
/ TopWare 18: Liquid / Image.iso / liquid / top1200 / paperbgi.lzh / PASCAL / BEISPIEL / TEST1.PAS < prev   
Encoding:
Pascal/Delphi Source File  |  1993-11-28  |  3.2 KB  |  92 lines

  1. {
  2. Filename TEST1.PAS
  3.  
  4. Benutzung der BGI-Treiber auf die einfachste Weise
  5. (C) Raimund Nisius
  6.     Goethepark  13
  7.     10627  Berlin
  8.  
  9. Im aktuellen Verzeichnis muß der (müssen die) verwendetete(n) Treiber sein.
  10. Der Compiler muß die Dateien
  11.    alloc.pas, params.pas und auswahl.pas
  12. übersetzen können.
  13.  
  14. }
  15.  
  16. program test1;
  17. uses dos,
  18.      crt,
  19.      alloc,     { Konfiguration der Treiber }
  20.      auswahl,   { Menue, das den Namen kaum verdient }
  21.      graph;
  22.  
  23. var
  24.    treiberpfad    : string;
  25.    i : integer;
  26.  
  27. begin
  28.  
  29. treiberpfad := '';                     { noch unbekannt }
  30. treiberpfad := fexpand(treiberpfad);   { wird zum aktuellen Verzeichnis }
  31.  
  32. repeat
  33.     waehle_treiber;                        { Ausgabegerät bestimmen }
  34.     initgraph( treibertyp,             { Graphik wird initialisiert }
  35.                treibermode,
  36.                treiberpfad);
  37.     {
  38.         Jetzt sind eventuell Meldungen auf dem Monitor zu sehen.
  39.         Dies sind Mitteilungen, daß Treiberfunktionen, die Initgraph
  40.         aktiviert hat, nutzlos sind. Sie können diese Meldungen
  41.         unterbinden mit
  42.     Treiber_konfiguration.umgebung.errormessages := False;
  43.     Treiber_konfiguration.umgebung.warnings      := False;
  44.         vor dem aufruf von initgraph.
  45.     }
  46.     writeln(grapherrormsg(Graphresult)); { Falls Treiber nicht gefunden o.ä.}
  47.     if treibertyp <> monitortreiber then
  48.        begin
  49.        writeln('Max X = ',GetMaxX, '   Max Y = ',GetMaxY);
  50.        writeln(getmaxcolor,' Farben');
  51.        end;
  52.     if getmaxcolor > 1 then
  53.         begin
  54.         setcolor(8);                    { dunkelgraue Fläche = Scharze Linien }
  55.         setbkcolor(15);                 { weiß für Farbversion }
  56.         end
  57.     else
  58.         begin
  59.         setcolor(1);                    { schwarz }
  60.         setbkcolor(0);                  { unbedruckt für Mono }
  61.         end;
  62. {    Treiber_konfiguration.nadeldrucker^.dicke[getcolor] := 10; {dicke Linie }
  63.     Treiber_konfiguration.nadeldrucker^.dicke[getcolor] := 1; {dünne Linie }
  64.     rectangle(0,0,GetMaxX,GetMaxY);                   { überall zu sehen }
  65.     SetTextStyle(TRIPLEXFont, HorizDir, 4);           { hier muß die Linie dünn sein }
  66.                                                       { bei großer Skalierung }
  67.                                                       { dicker wählen !}
  68.     settextjustify(RightText,TopText);
  69.     outtextxy(GetMaxX,0,'oben rechts');
  70.     setlinestyle(DashedLn,0,normWidth);
  71.     line(0,0,GetMaxX div 2,GetMaxY div 2);
  72.     setfillstyle(LtBkSlashFill,3);
  73.     PieSlice(GetMaxX div 2,GetMaxY div 2, 330, 30, GetMaxX div 6 );
  74.     setfillstyle(LtSlashFill,4);
  75.     PieSlice(GetMaxX div 2,GetMaxY div 2,  30,330, GetMaxX div 6 );
  76.     for  i := 0 to 4 do
  77.          begin
  78.          setcolor(2*i+1);
  79.          setlinestyle(i,$2F,ThickWidth);
  80.          line(0,(i*2+1) * (getmaxy div 20),GetMaxX,GetMaxY div 8 );
  81.          setcolor(2*i+2);
  82.          setlinestyle(i,$2F,normwidth);
  83.          line(0,(i*2+2) * (getmaxy div 20),GetMaxX,GetMaxY div 8);
  84.          end;
  85.  
  86.     if treibertyp = monitortreiber then { Monitorgraphik betrachten }
  87.        while readkey = #0 do;
  88.     closegraph;
  89.     writeln(' Weiter mit Tastendruck, Abbruch mit <ESC> ');
  90. until readkey = #27;
  91. end.
  92.