Sign in Join
Wiki copytemporary

Revision 2 of 3, by WikiArchive on 11-4-2026. The page as it is now.

Crt/de

Contents

Unit Crt

Vorwort

Die Unit Crt bietet eine komfortable Textausgabe auf der Text-Konsole. Auch bietet sie komfortable Tastatur-Eingabe. Der Ursprung der Unit kommt von Turbo-Pascal. Je nach OS wird die Text-Ausgabe welche mit Write/Writeln ausgeführt wird stark beschleunigt.

Wichtigste Features der Unit:

Die wichtigsten Befehle

Text-Ausgabe

Window

Legt einen Bereich fest, in dem die Ausgabe erfolgt.

pascal
Window(10, 5, 70, 10);

GotoXY

Positioniert den Cursor, im Beispiel Spalte 10, Zeile 5. Links-Oben ist 1,1.

pascal
GotoXY(10, 5);

WhereX

Fragt die Spalte ab, in dem sich der Cursor befindet.

WhereY

Fragt die Zeile ab, in dem sich der Cursor befindet.

ClrScr

Löschen den Bildschirm / Fenster, welches mit Windows festgelegt wurde.

TextColor

Legt die Farbe der Schrift fest.

pascal
TextColor(Green); // Grüne Schrift

Für die Farben sind folgende Konstanten vordefiniert:

pascal
const
    // Vordergrund / Hintegergrund-Farben
      Black         =  0;
      Blue          =  1;
      Green         =  2;
      Cyan          =  3;
      Red           =  4;
      Magenta       =  5;
      Brown         =  6;
      LightGray     =  7;
    
    // Zusätzliche Vordergrund Farben
      DarkGray      =  8;
      LightBlue     =  9;
      LightGreen    = 10;
      LightCyan     = 11;
      LightRed      = 12;
      LightMagenta  = 13;
      Yellow        = 14;
      White         = 15;  
    
    // Spezial
      Blink         = 128;

TextBackground

Legt die Hintergrund-Farbe der Schrift fest. Beim Aufruf von ClrSrc wird der Bildschirm/Fenster mit dieser Farbe eingefärbt.

pascal
TextBackground(Red); // Roter Hintergrund

TextAttr

Über diesen Bezeichner kann man direkt das Attribut auslesen und schreiben.

LowVideo

Die Farbe der Schrift wird auf Low gesetzt.

HighVideo

Die Farbe der Schrift wird auf High gesetzt.

NormVideo

Die Schrift wird auf Standard-Grau gesetzt.

InsLine

Eine Zeile bei Cursorposition einfügen.

DelLine

Die Zeile bei Cursorposition löschen.

Beispiel Text-Ausgabe

pascal
var
      i: integer;
    begin
      Window(10, 5, 30, 20);   // Fenstergrösse festlegen
      TextBackground(Red);     // Hintergrund-Farbe (Rot)
      ClrScr;                  // Fenster löschen
      for i := 1 to 8 do begin
        GotoXY(i, i);          // Cursor positionieren
        TextColor(i + 8);      // Text-Farbe festlegen
        Write('Hello World');
      end;
      repeat
      until KeyPressed;        // Bei Tastendruck Programm beenden
    end.

Tastatur-Eingabe

ReadKey

ReadKey holt ein Zeichen aus dem Tastatur-Puffer. Achtung, bei Funktions-Tasten müssen 2 Zeichen abgeholt werden, dabei ist das erste Zeichen ein #0. Dies betrifft F-Tasten, Pfeil-Tasten, etc.

KeyPressed

Prüft, ob eine Taste gedrückt wurde.

Beispiel Tastatur

pascal
var
      ch: Char;
    begin
      repeat
      until KeyPressed;     // Warten, bis eine Taste gedrückt.
      ch := ReadKey;
      if ch = #0 then begin // Funktionstaste
        ch := ReadKey;
      end;
    end.

Hinweis: KeyPressed holt keine Zeichen ab, dies muss mit ReadKey geschehen.

Ton-Ausgabe

https://upload.wikimedia.org/wikipedia/commons/d/d8/Nuvola_apps_ktip.png Hinweis: Funktioniert nicht auf allen Plattformen.

Sound

Gibt einen Ton in Hz aus.

pascal
Sound(1000); // 1'000Hz

NoSound

Haltet die Ton-Ausgabe an.

Delay

Verzögerung in MS.

pascal
Sound(1000); // 1'000s verweilen

Beispiel Ton-Ausgabe

pascal
begin
      Sound(1000); // 1'000 Herz
      Delay(1000); // 1 Sekunde verzögern.
      NoSound;     // Ton absellen
    end.

Autor: Mathias


From the Free Pascal wiki, page "Crt/de", as the Internet Archive kept it on 2024-12-27. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.