0
我正在寫一個C#應用程序,它運行在Mono的Linux上,我想隱藏控制檯光標。但是由於這個Console.CursorVisible = false
似乎什麼也沒有做,所以還有另外一種做法,例如一個控制檯命令還是一個本地函數?如何在Linux上的C#控制檯應用程序中隱藏遊標?
我正在寫一個C#應用程序,它運行在Mono的Linux上,我想隱藏控制檯光標。但是由於這個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數據庫中是否有缺失的元素。
如果它不起作用,請提交Mono項目的錯誤報告。這在WIndows上正常工作。它調用本地'SetConsoleCursorInfo'函數。 –