2012-07-20 139 views
2

在命令提示符下,当您按下插入按钮时,光标从细条更改为较粗的条以显示它处于覆盖模式,并且当您再次按下时,它会使它再次变薄以显示它处于插入模式 有没有什么办法可以在C#中做到这一点?将控制台光标设置为粗/细

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

+0

您打算在使用Console.Write时覆盖字符和/或保持在同一行吗?如果是这样,有几种方法。 http://stackoverflow.com/questions/888533/how-can-i-update-the-current-line-in-a-c-sharp-windows-console-app但是,你想要什么?也许更清楚地解释你想要做的事情。 – Sumo 2012-07-20 05:35:37

+0

我试图能够使光标或厚或薄 – Qwerty01 2012-07-20 06:06:24

回答

4

可以使用Console.CursorSize属性来改变光标的“厚度”。

以上各自的MSDN页面提供了您需要的所有信息以及一个示例。但请注意一点:如果您在应用程序中更改了光标大小,然后退出,它将保持该大小,除非您明确将其更改回来(或使用CMD窗口的属性来执行此操作)。

例(起码说明这一点):

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。请在考虑如何使用您的应用程序时牢记这一点。

+0

工作,idk为什么我没有看过之前,thx! – Qwerty01 2012-07-20 06:31:59