Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:software:matlab:tsim:doc:f:climenu

cliMenu

Die Funktion cliMenu erzeugt ein textbasiertes Menü auf der Matlab®-Kommandozeile und wartet auf Nutzereingabe.

Die Funktion ist eine Schnittstelle zur Matlab®-Funktion input mit dem Ziel, sowohl das Aussehen der Menüs auf der Kommandozeile zu vereinheitlichen als auch deren Programmierung zu erleichtern.

Syntax

answer = cliMenu(options)
answer = cliMenu(options,<parameter>,<option>)

Übergabeparameter

options (cell, nx2)
Strings mit den Optionen.
Die erste Spalte beinhaltet die Zeichen, die der Nutzer für die Auswahl der Option eingeben muß, die zweite Spalte die Beschreibung der jeweiligen Option.

optionale Übergabeparameter

Die Funktion cliMenu kann mit einer Reihe zusätzlicher Parameter in der Form von Schlüssel-Wert-Paaren (parameter, option) aufgerufen werden. Momentan stehen die folgenden optionalen Parameter zur Verfügung:

title (string)
Text, der über dem Menü quasi als “Titel” ausgegeben wird.
Default: “Please choose an option:”
prompt (string)
Text, der vor der Nutzereingabe ausgegeben wird.
Default: “Your choice:”
Gibt es eine voreingestellte Option (“default”, s.u.), wird diese in Klammern hinter dem Text zugefügt, z.B. “Your choice (default: [a]):”
default (string)
Voreingestellte Option, die gewählt wird, wenn der Nutzer einfach die Enter-Taste drückt, anstatt eine Option einzugeben.
Default: Leerer String (keine voreingestellte Option).

Rückgabeparameter

answer (string)
Nutzereingabe als String

Zusätzliche Hinweise

Wählt der Nutzer eine Option, die nicht existiert, gibt die Funktion eine Fehlermeldung aus, die dem Nutzer das mitteilt, gefolgt von einer abermaligen Darstellung des Menüs.

Versucht der Nutzer, eine Option als Voreinstellung zu übergeben, die nicht in den übergebenen Optionen existiert, gibt die Funktion einen Fehler zurück.

Zur Beachtung: Die Beschreibungen der Optionen sollten möglichst kurz und prägnant sein, insbesondere wegen der eher beschränkten Länge einer normalen Matlab®-Kommandozeile. Eine Beschränkung auf weniger als 60 Zeichen wird empfohlen, wo immer möglich. Außerdem: Irgendwer muß das alles lesen (und verstehen)…

Beispiele

Einfache Menüs ohne zusätzliche Optionen

Ein sehr einfaches erstes Beispiel:

options = {'1','first option';'2','second option'};
answer = cliMenu(options);

Die Ausgabe auf der Kommandozeile sähe entsprechend wie folgt aus:

Please choose an option:
 [1] first option
 [2] second option
Your choice: 

Auch wenn die Optionen unterschiedlich lang sind, werden sie “ordentlich” dargestellt:

options = {'vegetarian','first option';'meat','second option'};
answer = cliMenu(options);

Die Darstellung auf der Matlab®-Kommandozeile:

Please choose an option:
 [vegetarian] first option
 [meat]       second option
Your choice: 

Hinweis: Optionen dieser Länge zu verwenden, zumal noch ohne voreingestellte Auswahl, ist grundsätzlich eine eher schlechte Idee.

Ein einfaches Beispiel für eine voreingestellte Option.

options = {'a','Be an angel';'b','Beasty boy';'h','Go to hell!'};
answer = cliMenu(options,'default','b');

Die Ausgabe auf der Matlab®-Kommandozeile sähe entsprechend so aus:

Please choose an option:
 [a] Be an angel
 [b] Beasty boy
 [h] Go to hell!
Your choice (default: [b]): 

Drückt der Nutzer nun einfach auf die <key>Return</key>-Taste, statt eine andere Option einzugeben, ist “b” die von der Funktion zurückgegebene Nutzerantwort.

de/software/matlab/tsim/doc/f/climenu.txt · Zuletzt geändert: von 127.0.0.1