Endlos-Loop die mit Tastendruck beendet wird

Post Reply
Message
Author
SULU

Endlos-Loop die mit Tastendruck beendet wird

#1 Post by SULU »

Hi C-Freaks !

Ich möchte ein Programm schreiben das Tasteneingaben des Benutzers reagiert ohne dass man man die Eingabe mit <Enter> quittieren muss.
(z. B. Pfeil-Unten für nächsten Datensatz,
ESC oder q für Quit).
Weder getch() noch getchar() scheinen mir geeignet.

Gruss
SULU

Jochen

Re: Endlos-Loop die mit Tastendruck beendet wird

#2 Post by Jochen »

Schau Dir die ncurses-Bibliothek an (man ncurses). Ist ziemlich umfangreich, ermöglicht Dir aber das Reagieren auf Tastendruck, und das sogar Terminaltyp-unabhängig.

Jochen

SULU

Re: Endlos-Loop die mit Tastendruck beendet wird

#3 Post by SULU »

Hi Jochen !

Das war aber fix!!
An die nciurses hatte ich auch schon gedacht aber eher wegen Positionierung der Ein/Ausgabe auf dem Terminal. Gibt es ncurses auch auf SGI oder SOLARIS-Plattformen ?

Jochen

Re: Endlos-Loop die mit Tastendruck beendet wird

#4 Post by Jochen »

Ja klar. Die ncurses ("new curses") ist der Linux-Clone der curses-Bibliothek auf den kommerziellen UNIX-Varianten. Lies Dir unter Linux die man-page zu ncurses durch und versuch's dann mit den Funktionsnamen unter den kommerziellen Unices, dort sollten Dir die gleichen man-pages entgegenschlagen.

Es könnte höchstens passieren, dass beispielsweise Panel-Funktionen nicht bei allen kommerziellen Unices verfügbar sind. Dann musst Du mal schauen, ob die ncurses auch für das entsprechende System portiert wurde.

Aber Deine Chancen stehen gut, wenn Du nicht mehr als ein bisschen Cursor positionieren und Tastendrücke abfangen willst.

Jochen

SULU

Re: Endlos-Loop die mit Tastendruck beendet wird

#5 Post by SULU »

Hi Jochen !

Genaus das will ich.
Es soll kein ASCII-GUI (Wiederspruch in sich) mit redseligen Büroklammern u.s.w. werden. Also Ncurses ist die Wahl.

Thankx

ANDY

Post Reply