我的绘图方法;t画高度

本文关键字:高度 绘图 方法 我的 | 更新日期: 2023-09-27 17:58:34

我有一个绘图方法,应该画出一个框,但我的问题是它只画出框的宽度,而不是高度。

下面是一个代码片段:

class ColoredBox : Box
{
    protected ConsoleColor backColor;
    public ColoredBox(Point p, int width, int height, ConsoleColor backColor)
        : base(p, width, height)
    {
        this.backColor = backColor;
    }
    public virtual void Draw()
    {
        for (int j = 0; j < height; j++)
        {
            Console.SetCursorPosition(p.X, p.Y);
            Console.BackgroundColor = backColor;
            for (int i = 0; i <= width; i++)
                Console.Write(' ');
    }
}

问题似乎是Draw()方法,我无法将其打印出来,所以我如何解决这个简单的问题?

我的绘图方法;t画高度

在设置下一行的光标位置时,没有使用j。代码应为:

public virtual void Draw()
{
    for (int j = 0; j < height; j++)
    {
        Console.SetCursorPosition(p.X, p.Y + j);
        Console.BackgroundColor = backColor;
        for (int i = 0; i <= width; i++)
            Console.Write(' ');
    }
}