Forum: PC-Programmierung C++ Konsolenprogramm


von wie geht das (Gast)


Lesenswert?

Hallo,
wie kann ich bei einem Konsolenprogramm nicht einfach nur Text ausgeben 
und einlesen, sondern richtige Auswahlmenüs etc. machen? Es soll nach 
Beendigung des Programms auch nix mehr zu sehen sein, als Beispiel: wie 
bei nano, lynx oder auch ASCII-Games wie ASCII-Jump.

Ich benutze Linux und es muss nicht portabel sein.

Schomal vielen Dank im  Vorraus!

von Rolf M. (rmagnus)


Lesenswert?

ncurses

von physiker (Gast)


Lesenswert?

Traditionell (C): nucurses
oder so etwas https://github.com/libyui/libyui

von Mar.co (Gast)


Lesenswert?

Gaaaaaaanz früher gab es mal eine sogenannte Quick-Win-Library von MS, 
mit der DOS-Programme direkt in Windows-Programme verwandelt werden 
konnten. Das ließ sich dann auch dahingehend modifizieren, dass du 
eigenen Code hast einbringen können, also Fenster mit Zugriffen von 
extern.

von Gerd E. (robberknight)


Lesenswert?

ncurses ist die Basisbibliothek für sowas.

Aber die bedient ein ziemlich niedriges Niveau, Du hast das so Dinge wie 
Zeichne Linie, Setze Cursor auf Position xy, etc.

Wenn Du jetzt einen Popup-Dialog zeigen willst, musst Du Dir zuerst 
merken was für Inhalt darunter ist, Linien und Text zeichnen, Eingabe 
abfragen und hinterher den alten Inhalt wieder drunterschreiben. Das 
kann in ziemlich Arbeit ausarten.

Was auf ncurses aufbaut und ein wesentlich höheres Abstraktionsniveau 
bietet wäre newt:
https://en.wikipedia.org/wiki/Newt_(programming_library)

newt habe ich schon für mehrere Konsolensachen verwendet und bin recht 
gut damit klargekommen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.