0

Pythonコマンドラインアプリケーションを作成しました。機能の1つは、 -lスイッチを使用して呼び出すと、データベースから取得したアイテムのリストを出力することです。各項目には詳細な説明が関連付けられています。

1: item1
2: item2
3: item3
4: item4

ユーザーがリスト内の特定のアイテムの説明を表示したいときに、ユーザーが直感的で快適なTUIデザイン(コマンドライン)の良いパターンは何ですか?

今、私のアプリはかなり面倒です。アイテムには番号のプレフィックスが付いており、説明を表示する場合、関数getch()は間隔(1..9)でキーが押されるのを待ち、指定されたインデックスを持つアイテムの説明を出力します。コマンドラインアプリケーションであるため、マウスの位置を使用できません(より快適です)。もう1つは、説明を印刷するのに最適な場所はどこですか。それを繰り返し削除して別のアイテムの説明を印刷できるため、画面に興味のない情報が散らかることはありません。ユーザーは、特定の瞬間に興味のある情報のみを表示する必要があります。

リストの長さは無制限です。間隔(0..9)は一時的な解決策です。

このTUIデザインの良い習慣は何ですか?これを支援するTUIライブラリを使用しますか?その場合は、選択したライブラリを使用して、または使用せずに、いくつかの典型的なパターンを示してください。

私はPythonを使用していますが、 Pythonで同じことが達成できる場合に備えて、別の命令型言語を自由に使用してください

ありがとうございました

4

1 に答える 1

2

1)この質問https://stackoverflow.com/questions/791261/python-text-user-interfaceの回答には、このタスクに適していると思われる多くの優れたライブラリが記載されています。

2)数字ベースのセクションだけでなく、有効な入力として矢印キーを提供することをお勧めします[上記のライブラリの一部はこれを処理できます]。たとえば、NCDUツール(ncurseベースのディスク使用ツール)には、矢印キーを使用した優れたテキストベースのUIがあり、例として参照することをお勧めします。

于 2012-05-09T09:26:31.200 に答える