Menü-Aufbau im Hauptprogramm

Die Schleife von Zeile 163 bis 166 fügt dem Hauptmenü alle bereits vorhandenen Termine an, um sie bearbeiten zu können. Die Ausgabe über Dialog erfolgt schließlich in Zeile 170. Dazu rufen Sie einfach die Funktion auf und übergeben das Menü in zwei Variablen. Zeile 171 liest die Rückgabe des Aufrufs aus der Variablen REPLY, die von der Funktion AuswahlMenue gesetzt wurde.

Der Auswahlblock von Zeile 173 bis zum Ende des Programms behandelt die Eingabe des Benutzers, konkret das Tastenkürzel, das Dialog zurückgeliefert hat. Dialog interessiert sich nicht dafür, ob ein Tastenkürzel im Menü mehrfach vergeben wurde – bei der Auswertung der Rückgabe würde dies aber zu Chaos führen. Deshalb ist beim Aufbau des Hauptmenüs in Zeile 161 bis 166 besondere Umsicht geboten.

Will der Benutzer das Programm mit "q" verlassen, speichert der Termin-Client noch alle Termine und verlässt dann die Hauptschleife. Zeile 188 zeigt, wie Sie die Fehlerfunktion verwenden, falls das Speichern nicht geklappt hat.

Spitzfindigkeiten beim Datum

Das Tastenkürzel "0" ändert die eingestellte E-Mail-Adresse. Dazu benutzt das Programm die Funktion TextEingabe. Wie schon beim Menü übergeben Sie den anzuzeigenden Text sowie die Voreinstellung für die Eingabe einfach als Parameter der Funktion. Die Eingabe des Benutzers finden Sie in REPLY, wobei die Funktion wie oben beschrieben nicht berücksichtigt, dass der Benutzer die Eingabe auch abgebrochen haben könnte. In dem Fall ist die Variable REPLY leer.

Falls der Benutzer einen neuen Timer eingeben oder einen vorhandenen bearbeiten möchte, ruft das Hauptprogramm die Funktion TerminBearbeiten auf (Abbildung 2). Der Aufbau dieser Funktion ähnelt dem des Hauptmenüs.

Abbildung 2: Anpassen eines Termins: Mit dialog lassen sich Einstellungen sehr übersichtlich ändern, die Menüführung nimmt vielen unerfahrenen Benutzern die Angst vor der Kommandozeile.

Eine Besonderheit versteckt sich in der Zeile 85: Die Terminliste speichert das Datum stets als achtstellige Zahl bestehend aus Jahr, Monat und Tag ohne Trennzeichen. Der Benutzer wünscht jedoch die Anzeige in der gewohnten Form Tag, Monat und Jahr getrennt durch Punkte. Der Befehl

date -d ${Datum[$Nr]} +%d.%m.%Y

wandelt deshalb am Anfang von Zeile 85 das kompakte Datum in die übliche deutsche Schreibweise um. Bei der Datumseingabe spielt uns jedoch date einen Streich: Das Kommando akzeptiert das Datum in der üblichen deutschen Schreibweise nicht, sondern nur in der englischen oder international gebräuchlichen. In der Zeile 111 erinnert der Termin-Client deshalb daran, dass an dieser Stelle nicht die übliche deutsche Schreibweise möglich ist.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Teil 7: Benutzerfreundliche Ein-/Ausgabe
    Im letzten Teil des Bash-Programmierkurses geht es um die benutzerfreundliche Gestaltung von Eingaben und Dialogen am Beispiel der Programme dialog, gdialog und kdialog.
  • Shell-Skripte mit grafischen Dialogen
    Dass sich Shell-Programmierung und grafische Oberflächen nicht ausschließen, zeigt KDialog: Nie war es leichter, Shell-Skripte um User-Interaktion zu ergänzen.
  • Textbasierte User-Interfaces (Teil 1)
    Die Kommandozeile halten viele Anwender für trist und schlecht bedienbar. Das muss aber nicht so sein: Mithilfe von Dialog und Whiptail werten Sie Ihre eigenen Skripts unkompliziert mit Fenstern, Menüs und Dialogen auf.
  • Klacker, Klacker, Klick, Klick
    Häufig erledigen Skripte ihre Aufgaben unsichtbar im Hintergrund. Mancher User wünscht sich aber ein visuelles Feedback. Dank Zenity und KDialog fügen sich Ihre Skripte nativ in die KDE- oder Gnome-Umgebung ein.
  • Mehr Komfort
    Von einfachen Abfragen bis hin zu komplexen Menüs: Mit dem Toolkit Dialog bauen Sie eine grafische Oberfläche für Shell-Skripte, die oft nicht mehr als eine zusätzliche Zeile brauchen.
Kommentare

Infos zur Publikation

LU 12/2017: Perfekte Videos

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Huawei
Pit Hampelmann, 13.12.2017 11:35, 1 Antworten
Welches Smartphone ist für euch momentan das beste? Sehe ja die Huawei gerade ganz weit vorne. Bi...
Fernstudium Informatik
Joe Cole, 12.12.2017 10:36, 2 Antworten
Hallo! habe früher als ich 13 Jahre angefangen mit HTML und später Java zu programmieren. Weit...
Installation Linux mint auf stick
Reiner Schulz, 10.12.2017 17:34, 3 Antworten
Hallo, ich hab ein ISO-image mit Linux Mint auf einem Stick untergebracht Jetzt kann ich auch...
Canon Maxify 2750 oder ähnlicher Drucker
Hannes Richert, 05.12.2017 20:14, 4 Antworten
Hallo, leider hat Canon mich weiterverwiesen, weil sie Linux nicht supporten.. deshalb hier die...
Ubuntu Server
Steffen Seidler, 05.12.2017 12:10, 1 Antworten
Hallo! Hat jemand eine gute Anleitung für mich, wie ich Ubuntu Server einrichte? Habe bisher...