Kostis Netzwerkberatung
Talstr. 25, D-63322 Rödermark
Tel. +49 6074 881056, FAX 881058
kosta@kostis.net (Kosta
Kostis)
http://www.kostis.net/
Auswahlmenü unter MS-DOS. Liefert Auswahlergebnis im ERRORLEVEL.
Extern
batmenu zeile spalte Menüpunkt1 [Menüpunkt2 ...]
oder
batmenu datei
Zeilen und Spalten zählen ab 1. Wird für Zeile oder Spalte eine 0 angegeben, so wird die Auswahl automatisch zentriert. Wenn als Parameter eine Datei angegeben ist, so muß die Datei folgenden Inhalt haben:
Inhalt | Beispiel |
; Kommentare | ; Menü für die Heavies |
# Zeile Spalte Titel | # 0 0 Menü für die Heavies |
Menüpunkt1 | 1 MS-DOS Eingabeaufforderung |
Menüpunkt2 | 2 Microsoft Windows 3.11 |
usw. |
Diese Programm ist die Neuauflage eines Turbo Pascal Programmes von Rolf Zinn (Rolf.Zinn@igmetall.de) aus dem Jahr 1994, welches durch Borlands unendliche Weisheit bei schnellen Prozessoren (z. B. Pentium II 233 MHz) einen Runtime 200 Fehler lieferte. Da das Programm nicht mehr in Quellform vorlag und sich auch nicht patchen ließ, habe ich das Programm nach erfolgtem Auftrag nachgeschrieben und mit Borland C++ 3.1 und unter Verwendung eigener Bibliotheken (masklib, menulib) übersetzt. Dadurch ist batmenu.exe leider um ca. 12000 Byte größer.
Mit den Cursor-Tasten kann ein Menüpunkt angewählt und mit der Enter-Taste ausgewählt werden. Alternativ kann das erste Zeichen eines jeden Menüpunktes direkt angewählt werden. Hier ist die Bestätigung mit der Enter-Taste nicht mehr notwendig. Das Ergebnis wird im ERRORLEVEL zurückgeliefert, wobei 1 für den ersten Menüpunkt steht.
batmenu löscht den Bildschirm absichtlich nicht. Wer ein Menü auf gelöschten Bildschirmhintergrund will, wird den MS-DOS Befehl CLS vorher bemühen müssen. Nach Beendigung von batmenu steht der Cursor direkt unter letzten Zeile der Auswahlmaske. Das Original-Programm wurde um folgende Tasten und Funktionen erweitert:
Taste | Funktion |
Pos1 | Zum Anfang des Menüs springen |
Ende | Zum Endes Menüs springen |
Esc | Menü ohne Auswahl beenden (liefert ERRORLEVEL 0) |
Bei Menüeinträgen wird grundsätzlich das Zeichen "_" durch ein Leerzeichen " " ersetzt um das Verhalten des Original-Programmes nachzuahmen.
Einen offensichtlichen Unterschied zum Original-Programm gibt es. Der normale Text-Cursor blinkt links neben dem aktuell angewählten Menü-Eintrag. Beim Original-Programm war der Cursor deaktiviert. Ich denke dieser Unterschied ist verschmerzbar. Es gibt drei zusätzliche Fehlerkodes:
Kode | Bedeutung |
253 | interner Fehler (sollte wirklich nie auftauchen) |
254 | Fehler beim Öffnen der Menüdatei |
255 | Syntax Fehler |
batmenu 0 0 1_MS-DOS_Eingabeaufforderung 2_Microsoft_Windows_3.11
Es erscheint zentiert auf dem Bildschirm eine Maske, die zwei Menüpunkte hat. Je nach gewählten Menüpunkt liefert batmenu den ERRORLEVEL 1 oder 2.
Copyright © 1998-1999 by Kostis
Netzwerkberatung
Talstr. 25, D-63322 Rödermark, Tel. +49 6074 881056, FAX 881058
kosta@kostis.net
(Kosta Kostis), http://www.kostis.net/
Dieses Programm darf kostenfrei auf eigenes Risiko verwendet werden.