Terminal.Gui:.Net构建跨平台终端的框架

341 阅读3分钟

推荐一个.Net基于控制台跨平台的终端的框架,方便我们创建丰富用户界面应用程序。

01 项目简介

Terminal.Gui 是一个基于 .NET 的跨平台终端用户界面库,它允许开发者使用 C#创建终端应用程序,而无需依赖于传统的图形界面元素。该库提供了一套类似于 Windows Forms 或 WPF 的编程模型,但是专为文本模式的终端设计。

02 项目特点

**1、跨平台:**职场多种操作系统上运行,包括 Windows、macOS 和 Linux。

2、控件丰富:该库提供了一系列的 UI 控件,如按钮(Button)、标签(Label)、文本框(TextField)、列表(ListView)和窗口(Window)。

3、事件驱动:采用事件驱动的编程模型,使得开发者可以为控件定义响应用户输入的事件处理器。

4、键盘和鼠标支持:同时支持键盘和鼠标输入,为终端应用程序提供更丰富的交互方式。

5、高度可定制:开发者可以根据需要定制 UI 的外观,包括颜色、尺寸和布局等。

03 使用方法

1、示例代码

using Terminal.Gui;

Application.Init();
var win = new Window("Hello World")
{
    X = Pos.Center(),
    Y = Pos.Center(),
    Width = 50,
    Height = 10
};
var btn = new Button("确定")
{
    X = 5,
    Y = 5
};
btn.Clicked += () => {
    MessageBox.Query("提示", "你点击了确定!", "Ok");
};
win.Add(btn);

Application.Run(win);

2、效果

运行效果

图片

点击确定后的效果

图片

04 项目地址

github.com/gui-cs/Term…

更多开源项目: github.com/bianchengle…

- End -

推荐阅读

Coravel:一个可轻松实现任务调度、队列、邮件发送的开源项目

FluentAssertions:C#单元测试断言库,让测试代码更加直观、易读!

ImageSharp:高性能跨平台.NET开源图形库

ExcelDataReader:一个.Net高性能Excel开源读取器

Flurl:一个Star 3.9K的链式RESTful风格HTTP开源.Net库