0
私はMonoでLinux上で動作しているC#アプリケーションを書いていますが、コンソールカーソルを隠したいと思っています。しかし、このConsole.CursorVisible = false
はまったく何もしていないようですので、これを行う別の方法がありますか?コンソールコマンドまたはネイティブ関数?Linux上のC#コンソールアプリケーションでカーソルを非表示にする方法は?
私はMonoでLinux上で動作しているC#アプリケーションを書いていますが、コンソールカーソルを隠したいと思っています。しかし、このConsole.CursorVisible = false
はまったく何もしていないようですので、これを行う別の方法がありますか?コンソールコマンドまたはネイティブ関数?Linux上のC#コンソールアプリケーションでカーソルを非表示にする方法は?
これは、あなたが使用する端末/シェル型に大きく依存するが、ここではOS-X ITERMまたはターミナルのbash上では、私はそれを行う方法です。
public static void Main(string[] args)
{
Process.Start("tput", "civis -- invisible");
Console.WriteLine("Hello World!");
Console.Read(); // no cursor
Process.Start("tput", "cnorm -- normal");
Console.Read(); // with cursor
}
これは、Linux/bashの上で正常に動作する必要がありますし、おそらく他の人がterminfo
データベースを使用しているため、そうでなければ、欠落している要素についてterminfoデータベースをチェックします。
問題が解決しない場合は、Monoプロジェクトにバグを報告してください。 WIndowsではこれがうまく動作します。ネイティブの 'SetConsoleCursorInfo'関数を呼び出します。 –