【发布时间】:2023-02-22 16:19:29
【问题描述】:
我正在编写一个相当简单的控制台应用程序,我想将控制台窗口设置为特定大小。我一直在尝试 Console.SetWindowSize() 和 Console.WindowHeight/WindowWidth,但似乎都没有改变实际的窗口大小。从实验来看,他们所做的似乎是改变窗口内可以绘制文本的区域,这与我所期望的不太一样。
此外,似乎 Console.Clear() 也不太有效。结果似乎难以预料。有时以前的输出会被清除,有时不会,新的输出只是写在上面(旧的偶尔可见)。
我注意到,如果我通过用鼠标四处拖动来手动“弄乱”窗口大小,输出会变得非常乱码。看起来当前和旧数据或多或少随机地相互覆盖。
public TestScreen()
{
Console.WindowHeight = 20;
Console.WindowWidth = 20;
Console.WriteLine("Test 1");
Console.WriteLine("Max height: " + Console.LargestWindowHeight.ToString());
Console.WriteLine("Max width: " + Console.LargestWindowWidth.ToString());
Console.ReadKey();
Console.Clear();
Console.SetWindowSize(10, 10);
Console.WriteLine("Test 2");
Console.WriteLine("Max height: " + Console.LargestWindowHeight.ToString());
Console.WriteLine("Max width: " + Console.LargestWindowWidth.ToString());
Console.ReadKey();
Console.Clear();
}
结果: 1 , 2 (after pressing any key), 3 (after playing around with the window size)
【问题讨论】:
标签: c# windows-console