qtConsole

113,05 

Artikelnummer: n. v. Kategorie: Schlagwörter: , , , , ,

Beschreibung

Library zur Gestaltung der Ausgabe in die Konsole

Der Fortran Sprachstandard sieht aus Gründen größtmöglicher System-Kompatibilität keine

  • Möglichkeit zur Ausgabe von farbigen Texten bzw. Zahlen vor.
  • Auch der Cursor kann nur umständlich positioniert werden.
  • Der Konsoleninhalt läßt sich nicht einfach löschen.
  • Das Konsolenfenster selbst kann auf dem Desktop nicht an einem bestimmten Ort plaziert werden.
  • Die Anzahl der Zeilen, die die Konsole beinhalten kann, läßt sich weder bestimmen noch ändern

Wenn man nur für Windows programmiert, muß man sich diesen Restriktionen nicht unterwerfen. qtConsole bietet Fortran Programmierern neue Möglichkeiten und bringt Farbe ins Programm.

Abb.: Liste der qtConsole Funktionen (aus Demoprogramm Ex01.exe)

Die meisten Fortran Programme verwenden für die „Kommunikation“ mit dem Benutzer die Befehle READ(*,…), PRINT und WRITE(*,…), die alle auf die Konsole wirken (die Konsole wird unter Windows auch „DOS Eingabeaufforderung“, „DOS Box“ u.ä. genannt). Der Fortran Standard sieht nur eine einfarbige Ausgabe vor bzw. erlaubt keine Farbauswahl. Mithilfe der qtConsole Funktion qtConSetTextColor kann eine Vorder- und Hintergrundfarbe vorgegeben werden (256 Farbkombinationen sind möglich), mit der dann die folgenden PRINT und WRITE(*,…) Befehle einen farbigen Text bzw. farbige Zahlen schreiben.

Abb.: Farbkombinationen und -codes (aus Demoprogramm Ex01.exe)

Zusätzlich erlaubt die Funktion qtConWrite eine Positionierung. Damit ist man in der Lage, Texte bzw. Zahlen besonders hervorzuheben, bspw. um die Aufmerksamkeit auf einen Wert, der außerhalb eines zulässigen Bereichs liegt, zu lenken.

Abb.: Farbliche Darstellung von Temperaturwerten (aus Demoprogramm Ex01.exe)

Auch die Größe der Konsole (intern) und die des Konsolenfensters und seine Position können den eigenen Wünschen gemäß leicht angepaßt werden. Den Inhalt der Konsole löscht man durch Aufruf von qtConClearConsole.

Wem der Cursor in der Konsole zu klein ist (Voreinstellung ist meist 25{6e53f28f15c7aedbaa857642325217e9bd68f5fa8e03ad4ef47e254a12fa2d5c} der Buchstabenhöhe), kann ihn mittels qtConSetConsoleCursorSize bis auf Maximalgröße (100{6e53f28f15c7aedbaa857642325217e9bd68f5fa8e03ad4ef47e254a12fa2d5c}) verändern oder ihn unsichtbar schalten.

Innerhalb des Koordinatenbereichs einer Konsole ist der Cursor mittels qtConSetCursorPosition frei positionierbar. Anschließend kann mit PRINT und WRITE(*,…) an der neuen Cursorposition beginnend geschrieben (oder mit READ(*,…) gelesen werden).

Eine vollständige Funktionsübersicht bietet nachfolgende Tabelle:

Funktionsgruppe /
qtConsole Function

Funktion

Initialisierung
qtConInitialize qtConsole initialisieren
Konsolengröße und -position
qtConGetConsoleBufferSize Größe des internen Konsolenpuffers bestimmen (Zeilen und Spalten)
qtConSetConsoleBufferSize Größe des internen Konsolenpuffers vorgeben
qtConGetConsoleCoordinatesRange Koordinatenbereich der Konsole ermitteln
qtConGetLargestConsoleWindowSize Maximale Größe der Konsole bestimmen
qtConGetConsoleWindowCoordinates Koordinaten des Konsolenfensters ermitteln (relativ zum Desktop)
qtConChangeConsoleWindowSize Größe des Konsolenfensters ändern
qtConSetConsoleWindowPosition Positionierung des Konsolenfensters (relativ zum Desktop)
qtConGetPrimaryScreenSize Bildschirmgröße ermitteln (von Monitor 1)
Cursor
qtConGetCursorPosition Cursorposition ermitteln
qtConSetCursorPosition Cursor positioniern
qtConGetConsoleCursorSize Größe des Cursors ermittlen
qtConSetConsoleCursorSize Größe des Cursors ändern (0 – 100)
Ausgabe
qtConGetTextColor aktuelle Farbe für die Ausgabe bestimmen
qtConSetTextColor aktuelle Farbe für die Ausgabe vorgeben
qtConConvertToColorValue Farbangabe in eine Ganzzahl wandeln
qtConWrite Text farbig ausgeben, ggf. positioniern
qtConClearConsole die Konsole leeren
Sonstige Funktionen
qtConSetConsoleWindowTitle Titel des Konsolenfensters ändern
qtConFlushConsoleInputBuffer den Eingabepuffer leeren (clears READ buffer)
qtConGetErrorInformation Bedeutung eines Fehlecode ermitteln

Lieferumfang

qtConsole wird in Form einer statisch zu bindenden Bibliothek (.lib) samt diverser bereits compilierter MODULEs (.mod) Dateien bereitgestellt. Der Funktionsumfang und die Handhabung ist in einem Handbuch (PDF) samt Beispielen und mehreren Abbildungen ausführlich beschrieben.
Um den Einstieg zu erleichtern, steht ein Demonstrationsprogramm (Ex01.f90) zur Verfügung, das den Einsatz vieler Funktionen zeigt. Für alle unterstützten Compiler sind vorgefertigte Projekte vorhanden, die das Demonstrationsprogramm sowie die anderen notwendigen Dateien einbinden, so daß nach dem Laden des Projekts ein „Build“ das Demonstrationsprogramm (Ex01.exe) erzeugt.

Unterstützte Compilersysteme

Derzeit existieren Varianten für

  • Intel Visual Fortran (Win32) v10.1 und höher
  • Silverfrost FTN95 (Win32) v5.5 und höher

Diese sind mitunter auch für neuere Versionen der Compiler und möglicherweise auch für kompatible Compiler geeignet. Wenn Ihr Compiler in obiger Liste nicht dabei ist, Sie qtConsole dennoch verwenden möchten, probieren Sie doch einfach die Variante aus, zu dem Ihr Compilerhersteller angibt, kompatibel zu sein. Falls keine dabei ist, fragen Sie bitte an. Wir werden qtConsole auch für andere Compiler entwickeln, wenn genügend Nachfrage dafür besteht und sich dies programmiertechnisch bewerkstelligen läßt.

Testversion – Download

Sie können eine eingeschränkt (*) funktionsfähige Evaluierungsversion samt Beschreibung (im PDF Format) hier laden (Umfang des Download: ca. 1.7 MB:
qtConsole.zip
Zum Entpacken benötigen Sie ein Passwort, daß wir Ihnen gerne auf Anfrage kostenlos zusenden.

Installationsanleitung:

  1. Erzeugen Sie auf Ihrem PC ein Verzeichnis (bspw. C:\qtConsole)
  2. und kopieren Sie die Datei qtConsole.zip in dieses Verzeichnis.
  3. Dann entpacken Sie die .zip Datei in dieses Verzeichnis.
  4. Anschließend können Sie gleich eine der für Ihr Entwicklungssystem passenden Dateien IVF\Ex01\Ex01.sln oder FTN95\Ex01\Ex01.ftn95p starten (Doppelklick auf das Dateisymbol im Windows File Explorer sollte die Entwicklungsumgebung starten).
  5. Anschließend führen Sie bitte ein „Build“ durch
  6. und starten das erstellte Programm („run“).

(*) Die Evaluierungsversion erlaubt die Nutzung aller Funktionen bis zum Ende des Jahres. Auf diese Beschränkung wird beim Start eines auf qtConsole basierenden Programms mittels eines Startfensters hingewiesen. Bei Kauf einer qtConsole Lizenz erhalten Sie eine Lizenzdatei, die die Evaluierungsversion freischaltet, so daß sie zeitlich unbeschränkt und ohne das Startfenster verwendet werden kann.

Lizensierung

Die Testversion kann durch den Erwerb einer Nutzungslizenz in eine vollständig funktionsfähige Version umgewandelt werden (keine Neuinstallation notwendig).
Die Nutzungslizenz berechtigt zur Nutzung der qtConsole Software durch eine namentlich benannte Person (Einzelplatzlizenz) und hinsichtlich der qtConsole Library zur unbeschränkten Weitergabe innerhalb von Programmen (.exe), die die Library binden (link). D.h.: es werden keine Laufzeitgebühren („run-time-fees“ bzw. „royalties“) erhoben. Die ausführlichen Nutzungsbedingungen entnehmen Sie bitte dem Handbuch.
Der Fortran Quellcode von qtConsole ist ebenfalls erhältlich (ggf. anfragen).

Support

Wenn Sie Fragen haben, Probleme auftreten, Wünsche äußern möchten etc., stehen wir gerne zur Verfügung: eMail an support@qtsoftware.de.

Zusätzliche Informationen

Variante

für Intel Visual Fortran, für Silverfrost FTN95