关于c#:将Console Cursor设置为Thick / Thin

Set Console Cursor to Thick/Thin

在命令提示下,当您按下"插入"按钮时,光标将从细条变为粗条,以显示它处于覆盖模式,当您再次按下它时,它将再次变细以显示它处于插入模式。用C语言有什么方法可以做到这一点吗?

编辑:我想知道是否有方法使光标变粗/变细,而不是如何覆盖文本


可以使用console.cursorSize属性更改光标的"厚度"。

上面相应的msdn页面提供了您需要的所有信息,以及一个示例。不过,请注意一件事:如果您在应用程序中更改了光标大小,然后退出,那么它将保持在该大小,除非您显式地将其更改回原来的大小(或者使用CMD窗口的属性进行更改)。

示例(简要说明要点):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public static void Main()
{
    int originalSize = Console.CursorSize;

    try
    {
       Console.CursorSize = 100; // Use"full" cursor
       ...  
    }
    finally
    {
       // make sure we leave the cursor size as we found it.
       Console.CursorSize = originalSize;
    }
}

最后,还有一个警告:如果您将应用程序的输出重定向到一个文件或管道(>|Console.CursorSize属性将引发IOException。在考虑如何使用应用程序时,请记住这一点。