gpt4 book ai didi

c# - 在 Ubuntu 中,如何使用 C# 清除控制台历史记录?

转载 作者:行者123 更新时间:2023-12-04 19:06:04 34 4
gpt4 key购买 nike

我是 C# 的新手。我正在创建一个简单的控制台应用程序。我的任务是在控制台的某个地方做一个标记。并每次删除旧位置。有用。但有一个问题。当使用console.clear();只需转移到新框架,即可查看我之前标记点的旧位置。
每次单击后都会发生滚动
如何删除以前的控制台值?
我的代码:

using System;

namespace paint
{
class Point
{
public int x {get;set;}
public int y {get;set;}
//public int mark_y {get;set;}
//public int mark_x {get;set;}

protected int[] Position(){
this.x = x;
this.y = y;
//this.mark_x = mark_x;
//this.mark_y = mark_y;
return new int [] {this.x,this.y};
}
}
class Program
{
static void Main(string[] args)
{
Console.ForegroundColor = ConsoleColor.Red;
Point position = new Point{x = 10, y = 5};
do
{
Console.SetCursorPosition(position.x, position.y);
System.ConsoleKeyInfo console_key = Console.ReadKey(true);
if(console_key.Key == ConsoleKey.DownArrow && position.y >= 0 && position.y <= 9){
position.y += 1;
}
if(console_key.Key == ConsoleKey.UpArrow && position.y <= 10 && position.y >= 2){
position.y -= 1;
}
if(console_key.Key == ConsoleKey.LeftArrow && position.x <= 19 && position.x >= 1){
position.x -= 1;
}
if(console_key.Key == ConsoleKey.RightArrow && position.x >= 0 && position.x <= 18){
position.x += 1;
}
if(console_key.Key == ConsoleKey.Spacebar){
//position.mark_x = position.x;
//position.mark_y = position.y;
Console.Clear();
Console.SetCursorPosition(position.x, position.y);
Console.WriteLine("█");
}
} while (true);
}
}
}

最佳答案

您可以通过在每次使用 Console Functions 重置位置时创建一个新控制台来做到这一点。 .使用 FreeConsole 分离当前控制台然后使用 AllocConsole 创建一个新控制台.

关于c# - 在 Ubuntu 中,如何使用 C# 清除控制台历史记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69450526/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com