Frage

Was ist der Unterschied zwischen diesen 3? Soweit ich es weiß, bieten beide Bindungen an Flüche, die die C-Bibliothek für terminal-textbasierte Benutzeroberfläche sind.

Ich habe derzeit keine Kenntnis von den 3 und habe nie Flüche verwendet. Welches würden Sie empfehlen? Ich habe viele Male von NCurses gehört, aber nur ein- oder zweimal über CDK (durch Forschung) und nie von Urwid gehört (glaube ich).

War es hilfreich?

Lösung

Was ich nach dem Betrachten einiger Referenzen bekomme, ist:

  • Ncurses: Es handelt sich um eine kostenlose Softwareversion von Flüchen, daher müssen Sie sich mit allen freundlichen Details auf niedriger Ebene befassen.
  • Pycdk: Es ist eine Bibliothek auf höherer Ebene, die einige Widgets bietet. Ich habe diese nicht benutzt, aber laut der Quellforge -Projektseite war es lange Zeit nicht gewartet (zumindest die Python -Bindung), also würde ich nicht mit diesem eingehen.
  • Urwid: Ich habe diesen verwendet und ich muss sagen, dass es immer noch ein bisschen niedrig ist (es ist mehr ein Framework als eine Widget-Bibliothek), aber immer noch sehr nützlich und viel benutzerfreundlicher als Flüche. Als UI -Framework enthält es all das, was Sie normalerweise erwarten, wie Widgets, Ereignisse und eine Möglichkeit, das Layout der Widgets zu steuern. Einige Dinge, mit denen ich sagen würde, sind hart mit curses, sind aber einfach mit urwid sind: zeichnen Sie Ihre Widgets neu, wenn das Terminal geändert wird, und sammeln Sie die Mauseingabe (beispielsweise auf eine Schaltfläche).

Meine Empfehlung wäre also zu verwenden urwid Und wenn es nicht Ihren Bedürfnissen entspricht, suchen Sie nach anderen Alternativen.

Andere Tipps

Ich habe keine der Bibliotheken verwendet, aber ich gehe davon aus, dass Sie sich beziehen:

  • Python's eingebaut curses Modul
  • pycdk, eine Python -Schnittstelle zu CDK
  • Das urwid Konsole -UI -Bibliothek

Sie sind nur verschiedene Bibliotheken mit dem gleichen Ziel: Stellen Sie eine API für eine Konsolen-basierte Benutzeroberfläche an. Von einem Vorherige Frage, Es scheint, dass curses Benötigt mehr Kesselplatte mit niedrigem Niveau. Eine Sache zu beachten ist, dass Python's curses Das Modul ist nur unter UNIX erhältlich; Wenn Sie unter Windows sind, möchten Sie sich möglicherweise das ansehen Console Modul geschrieben von Fredrik Lundh.

Beide anderen Entscheidungen scheinen auch vielversprechend zu sein, obwohl urwid Sieht für die Entwicklung mehr organisiert und wird immer noch aktiv entwickelt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top