Terminal.Gui 离开字符仍然在 Linux 上生成
Terminal.Gui when leaving charracter are still generated on Linux
我使用 .NET 5 和 Terminal.Gui library from Miguel de Icaza 编写了一个小型控制台程序。
当我 运行 它在 Windows 上时,一切正常。我将它发布为 Linux 的自治单个文件,我 运行 在 Ubuntu 20.04 LTS 上将其作为 Windows 10 中的 WSL 1 发布。它再次运行良好,但是在 Linux 上,当我使用 top.Running = false;
退出程序时,屏幕没有被清除(不是真正的问题)但是每次鼠标移动都会在控制台上创建更烦人的字符。
有没有人解决这个问题
如果找到 [GitHub Terminal.Gui 项目问题的解决方案][1] 我只需将 Application.Shutdown();
添加到我的 main.所以它变成了:
static int Main(string[] args)
{
int rc = 0;
try
{
Application.Run<AppGui>();
Application.Shutdown();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
rc = -1;
}
if (rc > 0)
return AppGui.rc;
else
return rc;
}
提议的Application.Driver.End()
没有完全解决当我点击鼠标按钮时仍然有垃圾的问题(右击过去不再有效)。
[1]: https://github.com/migueldeicaza/gui.cs/issues/281
我使用 .NET 5 和 Terminal.Gui library from Miguel de Icaza 编写了一个小型控制台程序。
当我 运行 它在 Windows 上时,一切正常。我将它发布为 Linux 的自治单个文件,我 运行 在 Ubuntu 20.04 LTS 上将其作为 Windows 10 中的 WSL 1 发布。它再次运行良好,但是在 Linux 上,当我使用 top.Running = false;
退出程序时,屏幕没有被清除(不是真正的问题)但是每次鼠标移动都会在控制台上创建更烦人的字符。
有没有人解决这个问题
如果找到 [GitHub Terminal.Gui 项目问题的解决方案][1] 我只需将 Application.Shutdown();
添加到我的 main.所以它变成了:
static int Main(string[] args)
{
int rc = 0;
try
{
Application.Run<AppGui>();
Application.Shutdown();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
rc = -1;
}
if (rc > 0)
return AppGui.rc;
else
return rc;
}
提议的Application.Driver.End()
没有完全解决当我点击鼠标按钮时仍然有垃圾的问题(右击过去不再有效)。
[1]: https://github.com/migueldeicaza/gui.cs/issues/281