QProcess
内部を作成し、その出力をキャッチしてフォームに表示する GUI アプリケーションがあります。フォームから重要なイベントを何らかの方法でキャッチして、それらを渡す必要がありますQProcess
(実際の端末ウィンドウにできるだけ近づけるため)。
だから、私は処理keyReleaseEvent()
し、何らかの方法でevent.text()
(which is QString
) またはevent.key()
(which is int
) を引数に変換する必要があると思いますprocess.write()
(which takes char*
or QByteArray
)。そのような変換を行うための推奨される方法はありますか (ローカリゼーションの問題、ctrl/alt/shift 修飾子などを考慮して)? key()
戻り値からchar*
文字列へのある種のマッピングを構築したくはありません。text()
モディファイアをドロップします。
さらに、bash -c sudo something
QProcessでコマンドを使用してプロセスを開始すると、「ttyが存在せず、askpassプログラムが指定されていません」と不平を言ってすぐに終了するため、完全に間違ったことをしている可能性があります...