在C#中使用向上和向下箭头制作滚动方法

时间:2016-10-14 11:33:48

标签: c# methods scroll

我正在为另一个项目在学校建立一个基于文本的游戏。

我们有一个日志,其中写入的所有行都将被写入。

我总是采用45行的高度和145的宽度,所以你有45行写入,我已经制作了一个GUI所以在写完之后只剩下33行高度写入和143宽度

一旦页面已满,程序将通过我的GUI进行编写,我想解决该问题。

您可以在https://github.com/LegacyProgrammer/TextBasedWitcherGame

查看游戏并自行编码

1 个答案:

答案 0 :(得分:0)

public static void ScrollUpAndDown()
    {
        if (Program.busy != true)
        {
            ConsoleKeyInfo KeyInfo;
            KeyInfo = Console.ReadKey(true);
            switch (KeyInfo.Key)
            {
                case ConsoleKey.UpArrow:
                    CurrentLine--;
                    indexLog--;
                    if(indexLog >= Program.Log.Count)
                    if(CurrentLine == 5)
                    {
                        ClearText();
                        CurrentLine = Program.intResol_Long - 7;
                    }
                    Console.SetCursorPosition(1, CurrentLine);
                    Program.busy = true;
                    Console.WriteLine(Program.Log[indexLog]);
                    break;

                case ConsoleKey.DownArrow:
                    CurrentLine++;
                    indexLog++;
                    if (CurrentLine == Program.intResol_Long - 7)
                    {
                        ClearText();
                        CurrentLine = 5;
                    }
                    Console.SetCursorPosition(1, CurrentLine);
                    Program.busy = true;
                    Console.WriteLine(Program.Log[indexLog]);
                    break;
            }
        }

这是我现在向下滚动的代码,indexlog是日志中的字符串数量,当前行是当前行。