2.9 Textausgabe

Um in R-BASIC Texte auszugeben gibt es prinzipiell zwei Möglichkeiten: Die Verwendung eines Textobjekts (Memo, InputLine) oder die Verwendung des PRINT-Befehls. Die Textobjekte werden ausführlich im Objekthandbuch beschrieben. Die folgenden Kapitel beschäftigen sich mit dem PRINT-Befehl. Dabei wird vorausgesetzt, dass ein Screen existiert. Sehr häufig ist das ein BitmapContent Objekt, das die Anweisung defaultScreen im UI-Code hat.

^

2.9.1 Überblick

PRINT ist die zentrale Anweisung, um Text oder Zahlen auf dem Bildschirm darzustellen. Die Möglichkeiten von PRINT sind sehr vielfältig. Hier finden Sie deshalb einen Überblick.

Tabelle: Überblick über die PRINT Funktion

<Ausgabeliste> enthält numerische Ausdrücke, String-Ausdrücke oder Steueranweisungen (INK, PAPER, SPC usw.), getrennt durch Komma (tabulierte Ausgabe) oder Semikolon (fortlaufende Ausgabe).

Tabelle: Befehle im Zusammenhang mit Textausgaben

  • Der Cursor
    Damit Textausgaben fortlaufend auf dem Bildschirm erfolgen können, verwaltet R-BASIC intern, wohin die nächste Textausgabe erfolgt. Diese Position wird als Cursor-Position bezeichnet. Man sagt z.B. der Cursor steht in Zeile 7 und Spalte 4. Sie können die Cursorposition manuell mit dem Befehl LOCATE verändern.

  • Farben und Position
    Innerhalb einer Print-Anweisung kann die Text-Farbe und die Ausgabe-Position geändert werden. Diese Änderungen sind nur für diese eine Print-Anweisung gültig.

    Standardmäßig wird der Texthintergrund mit der aktuelle Hintergrundfarbe gelöscht. Wenn Sie Texte transparent ausgeben wollen müssen Sie als Hintergrundfarbe den Spezialwert BG_TRANSPARENT einstellen.

  • Steuerzeichen
    Innerhalb einer Print-Anweisung kann nicht nur Text, sondern auch sogenannte Steuerzeichen ausgegeben werden. Diese Zeichen mit einem ASCII Code unter 32 führen Sonderaufgaben aus. Sie sind weiter unten, in Kapitel 2.9.4 (Steuerzeichen) beschrieben. Insbesondere sei hier auf die Einstellung des Bildschirmmodus (Page-Mode, Scroll-Mode und Layout-Mode) hingewiesen, der sich nur über den Printbefehl ändern lässt.

  • Volle Kontrolle
    Das Verhalten der Print-Anweisung wird über die globale Systemvariable printFont gesteuert. Sie enthält alle für die Textausgabe relevanten Daten. Das Feld printFont.style enthält die Text-Stile (fett, kursiv usw.). Näheres dazu erfahren Sie weiter unten, im Kapitel 2.9.5 (Farben und Schriften) sowie im Handbuch "Spezielle Themen", Kapitel 2.

    Die Formatierung von Zahlen wird über die globale Systemvariable number-Format kontrolliert. Auch hierzu erfahren Sie Näheres weiter unten, im Kapitel 2.9.6 (Formatierung von Zahlen) sowie im Handbuch "Spezielle Themen", Kapitel 1.



^

2.9.2 Der PRINT-Befehl

PRINT ist die zentrale Anweisung, um Text oder Zahlen auf dem Bildschirm darzustellen.

PRINT


Syntax 1: PRINT
Der Cursor wird an den Anfang der nächsten Zeile gesetzt.

Syntax 2: PRINT <Ausgabeliste> <Ausgabeliste>
enthält die auszugebenen Daten, jeweils getrennt durch ein Trennzeichen (Komma oder ein Semikolon). Die Liste kann mit einem Trennzeichen abgeschlossen werden.

Elemente der Ausgabeliste können sein:
  • numerische Ausdrücke (Zahlen, Variablen, Berechnungen, ...)

  • String-Ausdrücke (Variablen, Stringfunktionen, ...)

  • Innerhalb von Stringausdrücken können mit der Funktion Chr$() auch Steuerzeichen an den Bildschirm gesendet werden. Eine Liste der Steuerzeichen und ihre Wirkung finden Sie weiter unten.

  • Eines der Positionierungs-Kommandos AT, TAB, SPC, ATXY

  • Eine Farbanweisung (INK, PAPER, COLOR)
Trennzeichen können sein:
  • Ein Komma. Es erfolgt eine tabulierte Ausgabe, d.h. der Cursor wird an die nächste Tabulator-Position gesetzt. Die Tabulatorschrittweite wird von der Systemvariablen tabWidth bestimmt.

  • Ein Semikolon. Es erfolgt eine fortlaufende Ausgabe ohne zusätzliche Zwischenräume.
Beispiele:
PRINT "Hallo", "Welt"  ' tabuliert
PRINT "Hallo"; "Welt"  ' hintereinander
Ausgabe:
Hallo    Welt
HalloWelt
Steht am Ende einer PRINT-Anweisung eines der Trennzeichen (Komma oder Semikolon), so bleibt der Cursor an der durch das Trennzeichen bestimmten Stelle. Steht kein Trennzeichen am Ende wird der Cursor nach der Ausgabe an den Anfang der nächsten Zeile gesetzt.

Beispiele:

A = 100 : N = 17
PRINT A, 2*A, sqr(a);  ' keine Zeileschaltung
PRINT " Otto ist"; N; " Jahre alt"
Ausgabe:
10020010 Otto ist 17 Jahre alt
A$ = "Ottokar isst Wurst"
PRINT A$;' keine Zeilenschaltung!
PRINT Left$(A$, 7); Right$(A$, 6)
Ausgabe:
Ottokar isst Wurst Ottokar Wurst
PRINT AT(0,0); "Ganz links oben"   ' Positionierung unabhängig
                                   ' vom eingestellten Fenster.
PRINT COLOR(BLACK, WHITE); " OK "  ' Farbe nur für diese Ausgabe
Die Farb- und Positionierungsanweisungen innerhalb des Print-Befehls können beliebig miteinander kombiniert werden.

Beispiel:

Print AT(2,2);Paper 0;"Hallo";AT (3,2);Ink 15;"Welt"
Beachten Sie, dass in diesem Beispiel die Anweisung PAPER auch auf das Wort "Welt" wirkt. "Welt" erscheint also weiß (15) auf Schwarz (0).

PRINT positioniert den Text immer relativ zum aktuell (mit WINDOW) eingestellten Text-Fenster. Ausnahmen sind die Funktionen PRINT AT und PRINT ATXY. Sie beziehen sich immer auf das maximale Textfenster.

Wurde kein WINDOW-Befehl ausgeführt, ist das maximale Fenster voreingestellt.

Geht der mit Print ausgegebene Text über das Text-Fenster hinaus, so hängt die Reaktion vom eingestellten Modus (PAGE-Mode, SCROLL-Mode oder LAYOUT-Mode) ab. Im LAYOUT-Modus werden Fensterbegrenzungen ignoriert, der Text geht rechts und unten über das Fenster hinaus. Im PAGE- und SCROLL-Mode wird beim Überschreiten der rechten Fensterseite eine neue Zeile eröffnet. Das Überschreiten des unteren Fensterrandes führt im PAGE-Mode dazu, dass der Cursor nach links oben gesetzt wird. Im Scrollmodus wird der Fensterinhalt nach oben geschoben (Scrolling). Dieser Modus steht nur zur Verfügung, wenn der Screen ein BitmapContent-Objekt ist.

Per Default ist für BitmapContent-Objekte der Scroll-Modus voreingestellt. Für alle anderen Objekte ist der Layout-Modus voreingestellt.

^

2.9.3 Der Textbildschirm

^

2.9.3.1 Aufbau des Textbildschirms

Der Bildschirm gliedert sich für die Textausgabe in Zeilen und Spalten. Entsprechend der bei Computern üblichen Zählweise beginnen sowohl die Zeilennummern als auch die Spaltennummern bei Null.

LOCATE

Der Befehl PRINT beginnt seine Textausgabe an der aktuellen Cursorposition. Mit der Anweisung LOCATE können Sie diese Position verändern.
Syntax: LOCATE zeile, spalte

zeile: Zeilenposition für die nächste RPINT-Anweisung

spalte: Spaltenposition für die nächste RPINT-Anweisung


Hinweise:

  • Ein Standard-Zeichen ist 16 Pixel hoch und 10 Pixel breit. Wenn Sie zum Beispiel ein Ausgabefenster der Größe 640x400 Pixel haben, so fasst der Bildschirm 25 Zeilen zu 64 Zeichen.

  • Setzen Sie einen anderen Font (siehe FontSetFixed, FontSetGeos, FontSetBlock), so ändern sich die Werte für Zeichenbreite und Zeilenabstand. Dabei kann es passieren, das rechts und/oder unten ein Rand bleibt. Der Befehl WINDOW (ohne Parameter) wird beim Aufruf dieser Routinen automatisch ausgeführt und aktiviert das komplette Ausgabefenster (mit Rand, falls erforderlich). Der Rand wird nicht von Text beschrieben, von CLS aber gelöscht.

  • Im GEOS-Font-Modus (aktiviert mit FontSetGeos) haben die Zeichen meist keine feste Breite (die meisten GEOS-Fonts sind sog. Proportional-Fonts). Eine feste Zuordnung zwischen Zeichen und Bildschirmposition ist hier nicht sinnvoll. Die Befehle WINDOW und LOCATE rechnen daher mit einer durchschnittlichen Breite von 60% der Zeichenhöhe. Bei Bedarf lässt sich dieser Wert über die System-Variable printFont.charWidth einstellen (Achtung! Profi-Funktion!).

WINDOW

Der Befehl WINDOW (Fenster) schränkt die Textausgabe auf einen bestimmten Bereich des Bildschirms ein. Die Einschränkung gilt nur für Textein- und ausgaben (PRINT, INPUT, CLS, LOCATE einschließlich der darauf wirkenden Farb-Befehle), nicht jedoch für Grafikbefehle.
Syntax 1: WINDOW za, ze, sa, se
za: erste Zeile
ze: letzte Zeile
sa: erste Spalte
se: letzte Spalte
Die Zählung für Zeilen und Spalten beginnt bei Null.

Syntax 2: WINDOW
Es wird das maximal mögliche Ausgabefenster eingestellt.

Beispiel:

Die Textausgabe wird auf die Zeilen 10 bis 15 innerhalb der Spalten 20 bis 30 eingeschränkt.

WINDOW 10, 15, 20, 30
Der Befehl LOCATE bezieht sich immer auf das eingestellte Fenster.

Beispiel:

WINDOW 2, 9, 4, 15
LOCATE 2, 4
PRINT "Hallo"


^

2.9.3.2 Positionierung von Text

Die tabWidth-Systemvariable

Werden bei Print die Argumente mit einem Komma getrennt, erfolgt eine tabulierte Ausgabe. Die Systemvariable tabWidth bestimmt dabei die Position der Tabulatoren. Gültige Werte sind ganze Zahlen im Bereich von 1 bis 1024.

tabWidth kann gelesen und geschrieben werden.

Beispiel:Tabulator auslesen und neu setzen

Print "Tabulator",  "=", tabWidth  ' Standardwert: 16
tabWidth = 23
Print "Tabulator",  "=", tabWidth  ' 23 erscheint
tabWidth = tabWidth / 2
Print "Tabulator",  "=", tabWidth  ' 11 erscheint (ganzzahlig)


Positionierung innerhalb von Print

Innerhalb einer PRINT-Anweisung kann man nicht nur Text ausgeben, sondern auch Positionierungsaufgaben wahrnehmen, damit die Ausgabe ordentlich aussieht. Dafür stehen die Funktionen SPC, TAB, AT und ATXY zur Verfügung.

SPC und TAB

Die Funktion SPC (Spaces) erzeugt eine bestimmte Anzahl von Leerzeichen und gibt diese aus.

Die Funktion TAB (Tabulator, Tabelle) positioniert den Cursor an der angegebenen Spalte in der Zeile, indem so viele Leerzeichen, wie dafür nötig sind, erzeugt und ausgegeben werden.


Syntax: PRINT SPC(n); <Ausgabeliste>
n: Anzahl der auszugebenden Leerzeichen
<Ausgabeliste> : Liste von Werten, die ausgegeben werden sollen.

Syntax: PRINT TAB(n); <Ausgabeliste>
n: Position (Spalte), an der der Cursor stehen soll
TAB verwendet nicht die globale Variable tabWidth, sondern erwartet direkt die Spalte, relativ zum aktuellen Window.
<Ausgabeliste> : Liste von Werten, die ausgegeben werden sollen.

Beispiele:
A = 3
PRINT "Alfa"; SPC(12);"Beta"             ' 12 Leerzeichen
PRINT "Alfa"; TAB(12);"Beta"             ' an Position 12
PRINT A; TAB(8); A*A; TAB(24); A*A*A
Ausgabe
Alfa            Beta
Alfa        Beta
 3       9              27

AT und ATXY

Die Funktion AT ('at' heißt 'an') positioniert den Cursor an der angegebenen Stelle (Zeile, Spalte). Die Funktion ATXY positioniert den Cursor an der angegebenen Grafik-Position (x, y) in Pixeln. Damit ist eine Text-Positionierung unabhängig vom Zeichen-Raster aus Zeilen und Spalten möglich.

Beide Funktionen beziehen sich NICHT auf das aktuelle Text-Window, sondern schreiben den Text bezüglich des maximalen Fensters.


Syntax: PRINT AT(zeile, spalte); <Ausgabeliste>
zeile: Zeichen-Zeile, in die die Ausgabe erfolgen soll
spalte: Zeichen-Spalte, in die die Ausgabe erfolgen soll Zeile und spalte beziehen sich auf das maximale Text-Fenster.
<Ausgabeliste> : Liste von Werten, die ausgegeben werden sollen.

Syntax: PRINT ATXY(x, y); <Ausgabeliste>
x, y: Koordinaten, an der der Text erscheinen soll
Die linke obere Ecke des ersten Text-Zeichens erscheint an dieser Stelle. Beachten Sie, dass hier die Grafik-Konventionen für die Koordinaten gelten, d.h. es folgt zuerst die x-Koordinate (entsprechend der Spalte) und dann die y-Koordinate (entsprechend der Zeile). Bei PRINT AT() und LOCATE ist es andersherum (erst die Zeile und dann die Spalte).
<Ausgabeliste> : Liste von Werten, die ausgegeben werden sollen.

Beispiele:
PRINT AT(0,7); "****************"
' Ausgabe untereinander:
PRINT AT(3,10); "A";AT(4,10); "B";AT(5,10); "C";
PRINT ATXY(0,300);"xyz"       ' links, unten (!)
Hinweise:
  • Hinter SPC, TAB, AT und ATXY sollte immer ein Semikolon (kein Komma) folgen, da ein Komma die Cursorposition wieder ändern kann (Anwahl der nächsten Tabulator-Position).

  • Die Klammern um die Argumente sind optional.
PRINT SPC 7, "sieben Leerzeichen"
  • Diese Anweisungen können beliebig mit den Farb-Anweisungen kombiniert werden.

  • Sie sollten AT bzw. ATXY nicht mit TAB oder VGet$ kombinieren. Die Ergebnisse sind häufig unerwartet.


^

2.9.3.3 Ermitteln der Cursorpostion

Sie können in R-BASIC sowohl die aktuelle Cursor-Position ermitteln (CsrLin, POS) als auch das auf der Cursor-Position stehende Zeichen lesen (VGet$).

CsrLin

Die Funktion CsrLin (d.h. Cursor Line, Zeile des Cursors) liefert die Zeile, in der sich der Cursor gerade befindet. Der Parameter n bestimmt, worauf sich CrsLin beziehen soll.
Syntax: <numVar> = CsrLin (n)
n > 0: Zeilennummer bezüglich des aktuellen Text-Fensters
n = 0: Zeilennummer bezüglich des maximalen Fensters
n < 0: Sonderfunktion: Anzahl der Zeilen im aktuellen Fenster

Beispiel:
WINDOW 5, 10, 8, 45
Color 7, 0: CLS
Print CsrLin(1); CsrLin(0)
Print "Das Fenster hat"; CsrLin(-1); "Zeilen"

POS

Die Funktion POS (d.h. Cursor Position, Spalte des Cursors) liefert die Spalte, in der sich der Cursor gerade befindet. Der Parameter n bestimmt, worauf sich POS beziehen soll.
Syntax: <numVar> = POS (n)
n > 0:Spaltennummer bezüglich des aktuellen Text-Fensters
n = 0:Spaltennummer bezüglich des maximalen Fensters
n < 0:Sonderfunktion: Anzahl der Spalten im aktuellen Fenster

Beispiel:
WINDOW 5, 10, 8, 45
Color 7, 0: CLS
Print Pos(1)
Print Pos(0)
Print "Das Fenster hat"; Pos(-1); "Spalten"
Hinweis: Die Funktionen AT und ATXY aktivieren intern kurzzeitig das maximale Textfenster. Verwenden Sie CsrLin, POS und VGet$ deswegen nicht als Argumente einer PRINT-Anweisung, die auch AT oder ATXY enthält.

Fehlerhaft:

Print AT (10, 9); POS(-1)
Korrekt:
A = POS(-1)
Print AT (10, 9); A

VGet$

Die Funktion VGet$ (d.h. Video Get - Hole von der Grafikkarte) liefert das Zeichen, das sich an der aktuellen Cursor-Position befindet.

VGet$ ist ein Kompatibilitätsbefehl für ältere BASIC Programme, die für einen echten Textmodus geschrieben wurden.


Syntax:C$ = VGet$
Anmerkung:
  • Nachdem der Bildschirm mit CLS gelöscht wurde, liefert VGet$ an unbeschriebenen Positionen Null-Zeichen (Leerstrings). ASC(VGet$) liefert Null.

  • Ein Aufruf der Funktionen FontSetFixed oder FontSetBlock löscht den von VGet$ verwendeten Speicherbreich. VGet$ liefert an nicht erneut beschriebenen Positionen Leerstrings.

  • VGet$ steht im GEOS-Font-Modus (nach FontSetGeos) nicht zur Verfügung.

  • Für nicht unterstützte Screenobjekte oder wenn der Screen mehr als 8000 Zeichen enthalten kann liefert VGet$ immer ein Null-Zeichen (Leerstring)

  • VGet$ steht im LAYOUT-Modus nicht zur Verfügung.
Beispiel:
Dim a$
  WINDOW
  Color 7, 0: CLS
  Print "Hallo BASIC"
  Locate 0, 7
  a$ = VGet$
  Print AT(2, 7); a$
Hinweis: Die Funktionen AT und ATXY aktivieren intern kurzzeitig das maximale Textfenster. VGet$ deswegen nicht als Argument einer PRINT-Anweisung, die auch AT oder ATXY enthält.

^

2.9.4 Steuerzeichen: Scrollmode, Pagemode und Layoutmode

ASCII-Codes im Bereich von Null bis 31 ist kein Buchstabe, sondern eine Steuerfunktion zugeordnet. Einige dieser Codes können von R-BASIC in der PRINT-Anweisung ausgewertet werden. Im Folgenden finden Sie eine Zusammenstellung der verfügbaren Steuerzeichen. Besondere Bedeutung kommt dabei dem PAGE-Mode, dem SCROLL-Mode und dem LAYOUT-Mode zu, da diese nur über die Steuerzeichen und PRINT eingestellt werden können.

SCROLL-Mode

Am Zeilenende wird in die nächste Zeile gewechselt. Wenn das untere Ende des Text-Fensters erreicht wird, schiebt R-BASIC den Fensterinhalt um eine Zeile nach oben. Am unteren Fensterrand entsteht eine Leerzeile. Der Scrollmode steht nur zur Verfügung, wenn der Screen ein BitmapContent-Objekt ist.

PAGE-Mode

Am Zeilenende wird in die nächste Zeile gewechselt. Wenn das untere Ende des Text-Fensters erreicht wird setzt R-BASIC den Cursor wieder nach links oben.

LAYOUT-Mode

Es gibt weder einen automatischen Zeilenumbruch noch eine Begrenzung auf das Textfenster. Der Cursor kann frei positioniert werden, auch mit negativen Koordinaten (links oder oberhalb des Textfensters). Texte können über das Fenster hinausragen (und damit auch unsichtbar werden).

Chr$(code)

Um ein Steuerzeichen auszugeben, verwenden Sie innerhalb einer Print-Anweisung die Stringfunktion Chr$() oder eine Backslash '\', gefolgt vom entsprechenden ASCII-Code.
Syntax: PRINT Chr$(code); ' z.B. Print Chr$(19);
PRINT "\code"; ' z.B. Print "\19";
code: das auszuführende Steuerzeichen

Hinweise:
  • Nicht unterstützte (d.h. nicht in der Tabelle aufgeführte) Steuercodes werden ignoriert.

  • Nach Chr$(code) sollte ein Semikolon folgen.

  • Ist code > 31, erzeugt Chr$() das entsprechende ASCII-Zeichen.

  • Im GEOS-Font-Modus arbeiten die meisten Steuercodes nur eingeschränkt (siehe Beschreibung in der Tabelle)

  • Im GEOS-Font-Modus existieren keine festen Zeichen-Positionen, da die meisten Buchstaben verschieden breit sind. Die Steuerzeichen arbeiten daher mit einer "durchschnittlichen" Zeichenbreite. Ob die Funktion für Ihre Zwecke brauchbar ist, müssen Sie ausprobieren.

  • Grundsätzlich NICHT korrekt arbeiten Codes, die einzelne Zeichen löschen oder einfügen (ASC_CLEAR, ASC_BACKSPACE, ASC_DEL, ASC_INS).

  • Mit der Ausnahme der Codes 9 (ASC_TAB) und 13 (ASC_ENTER) können Textobjekte keine Steuerzeichen verarbeiten. In einigen Fällen kann es sogar zum Crash kommen, wenn Sie andere Steuerzeichen an ein Textobjekt übergeben.
Um die symbolischen Namen (z.B. ASC_UP) verwenden zu können, müssen Sie die KeyCodes-Library einbinden.
Include "KeyCodes"  ! Groß-/Kleinschreibung beachten

Tabelle: ASCII Steuercodes

InKey$-Taste: Gedrückte Taste, damit InKey$ diesen Code zurückgibt.
Bedeutung in Print: Funktion, die mit Print Chr$(code) ausgeführt wird.



^

2.9.5 Farben und Schriften

Standardmäßig verwendet Print die aktuelle Vorder- und Hintergrundfarbe, die mit einem der Befehle INK, PAPER oder COLOR eingestellt wurden. Sie können die Farben jedoch für eine einzelne Print-Anweisung ändern, indem Sie die Funktionen INK, PAPER oder COLOR innerhalb der Print-Anweisung angeben. Diese Farbwerte gelten dann nur für diese eine Print-Anweisung.

INK, PAPER, COLOR


Syntax: PRINT INK( v ); <Ausgabeliste>
PRINT PAPER( h ); <Ausgabeliste>
PRINT COLOR( v, h ); <Ausgabeliste>
v: Vordergrund (Text- ) Farbe
h: Hintergrundfarbe
<Ausgabeliste> : Liste von Werten, die ausgegeben werden sollen.

Hinweis: Um Texte oder Blockgrafik-Zeichen transparent auszugeben (d.h. der Hintergrund wird nicht gelöscht) verwenden Sie als Hintergrundfarbe die spezielle Konstante BG_TRANSPARENT (numerischer Wert: 4096).

BG_TRANSPARENT kann sowohl innerhalb der Print-Anweisung als auch mit den BASIC-Befehlen PAPER und COLOR verwendet werden.

Beispiel:

PRINT AT (7, 12); COLOR (BLACK, WHITE);  " ACHTUNG! "
PRINT AT (7, 12); PAPER (BG_TRANSPARENT);  " ACHTUNG! "
Hinweise:
  • Die Farbanweisungen können beliebig mit den Positionierungsanweisungen AT und ATXY kombiniert werden.

  • Hinter den Farbanweisungen sollte immer ein Semikolon folgen, damit die Cursorposition nicht verändert wird.

Verwendung von Schriften

Print verwendet immer die aktuell eingestellte Schriftart und Schriftgröße. Die folgende Tabelle enthält die wesentlichen Befehle zum Einstellen von Schriftart und Schriftgröße. Eine ausführliche Beschreibung sowie weitere Befehle zur Verwaltung von Schriften finden Sie im Handbuch "Spezielle Themen", Kapitel 2 (Verwendung von Schriften) und Kapitel 4 (Verwendung des Block-Grafik-Modus). Der Block-Grafik-Modus erlaubt die Ausgabe von selbst erstellten Grafikzeichen mit dem Print-Befehl.

Printfont.style enthält Bitflags. Die Arbeit mit Bitflags ist im Kapitel 2.3.5.4 (Sonderfall: Bitflags) erläutert.

Beispiele:

'Setzen des Stils "unterstrichen", auch wenn er schon gesetzt ist
printFont.style = printFont.style OR TS_UNDERLINE
' Rücksetzen des Stils "kursiv", auch wenn er nicht gesetzt war
printFont.style = printFont.style AND NOT TS_ITALIC


^

2.9.6 Formatierung von Zahlen

Wenn Sie mit dem Print-Befehl eine Zahl ausgeben gibt R-BASIC Vor- und Nachkommastellen aus oder wechselt in die Expotentialdarstellung, je nachdem in welchem Bereich die Zahl liegt.

Zur Einstellung des Zahlenformats stehen in R-BASIC die folgenden Befehle und Variablen zur Verfügung. Sie sind ausführlich im Kapitel 1 des Handbuchs "Spezielle Themen" beschrieben. Wenn Sie zum Beispiel selbst festlegen wollen, wie viele Nachkommastellen ausgegeben werden, können Sie die Systemvariable numberFormat manuell ändern.

Für viele Zwecke reichen die R-BASIC Standard-Zahlenformate aus, so dass Sie sich meistens nicht mit der komplexen Belegung der numberFormat-Variable beschäftigen müssen. Im Folgenden finden Sie eine Kurzbeschreibung der Anweisung SetNumberFormat. Eine vollständige Beschreibung sowie weitere Syntaxvarianten finden Sie im Kapitel 1 des Handbuchs "Spezielle Themen".

SetNumberFormat

Stellt das Zahlenformat für die Anzeige von Zahlen ein.
Syntax: SetNumberFormat ( format )
Die Systemvariable numberFormat wird belegt.
format: einzustellendes Format (ein numerischer Wert, siehe Tabelle)

Für 'format' stehen folgende Werte zur Verfügung:

Beispiele:

SetNumberFormat ( NF_NORMAL )
SetNumberFormat ( NF_SCI_4 )

^

Weiter...