2

メニューリストまたはテキストボックスである可能性のあるウィジェットの横に秒単位でカウントダウンを表示する Linux コンソール (X ではなく「ターミナル」コンソール) 用のダイアログウィジェットを作成するにはどうすればよいですか?

理想的には、これはダイアログのようなスタンドアロン プログラムであり、その動作を制御するためのパラメータが提供されます。

カウントダウンが 0 になると、ウィジェットの選択された値が返されます。人間が存在しない場合 (または人間がデフォルトを好む場合) に備えて、デフォルト値が存在する可能性があります。grub や lilo などのブートローダーは、すでにこれをほぼ実行できます。ダイアログのマニュアル ページを調べましたが、この機能セットが見つかりませんでした。

これまでに試した:

dialog --timeout 30 --menu 'Menu Title' 20 60 3 'A' 'Choose A' 'B' 'Choose B' 'C' 'Choose C'近いですが、30 秒のタイマーが刻々と過ぎていません。

dialog --pause 'Hurry!' 10 60 30 --タイマーの実行中にメッセージと OK/キャンセル を表示しますが、これはインタースティシャルのみであり、ユーザー入力用ではありません。

次のように複数の行を組み合わせることができます。

dialog --menu 'Menu Title' 10 60 3 'A' 'Choose A' 'B' 'Choose B' 'C' 'Choose C' --pause 'Hurry up' 10 60 30 

ただし、ウィジェットは 1 つのページにまとめて表示されるのではなく、順番に表示されます。ここでは、タイマーなしでメニューに応答した後、タイマー付きのメッセージが表示されます。

4

3 に答える 3

1

dialogmanページを読むことをお勧めします。ああ、あなたはすでにやった、とあなたは言いますか?次に、何が問題なのですか:

-- テキストの高さ、幅、秒を一時停止します

一時停止ボックスには、ボックスの下部に沿ってメーターが表示されます。メーターは、一時停止が終了するまでの残り秒数を示します。一時停止は、タイムアウトに達するか、ユーザーが OK ボタン (ステータス OK) を押すか、ユーザーが CANCEL ボタンまたは Esc キーを押すと終了します。

于 2009-08-26T06:12:07.827 に答える
1

Ncursesはあなたが探しているものだと思います

于 2009-08-26T06:11:11.357 に答える