C-sharp-console-gui-framework:C

玩点科技新鲜事 2024-08-09 18:28:45

我是编程乐趣,一个10年.Net开发经验老程序员,点击右上方“关注”,每天为你分享开源项目和编程知识。

推荐一个.Net开源项目,方便我们基于控制台创建图形用户界面(GUI)应用程序。

01

项目简介

ConsoleGUI是一个简单的布局驱动.NET框架,用于创建基于控制台的GUI应用程序。

核心功能:布局驱动:与WPF或HTML类似,是完全布局驱动的。开发人员不需要指定控件的确切坐标,而是让堆栈面板、停靠面板和其他布局管理器自动处理。支持跨平台:框架不依赖于特定平台,且没有外部依赖。它针对.NET标准2.0,可以在Windows和Linux机器上运行。基本控件:提供了一系列基本控件,如文本框(TextBox)、文本块(TextBlock)、网格(DataGrid)等。响应式设计:如果窗口大小没有显式设置,布局将根据窗口的初始大小进行调整。但框架不自动检测终端大小变化。线程和兼容性:不是线程安全的,所有UI更改应在同一线程上执行。默认情况下,ConsoleGUI使用真彩色格式,通过支持多达1678万种前景和背景颜色。如果终端不支持真彩色,可以使用兼容性模式。

02

使用方法

1、安装依赖库

Install-Package ConsoleGUI

2、引用命名空间

using ConsoleGUI;using ConsoleGUI.Controls;using ConsoleGUI.Space;

3、示例

using ConsoleGUI;using ConsoleGUI.Controls;using ConsoleGUI.Input;using ConsoleGUI.Space;ConsoleManager.Setup();ConsoleManager.Resize(new Size(50, 10));// 创建文本块作为欢迎信息var welcomeTextBlock = new TextBlock{ Text = "ConsoleGUI使 用 示 例!",};// 创建文本框供用户输入var inputTextBox = new TextBox();// 创建一个垂直堆栈面板来垂直排列控件var verticalStackPanel = new VerticalStackPanel();verticalStackPanel.Add(welcomeTextBlock);verticalStackPanel.Add(inputTextBox);ConsoleManager.Content = verticalStackPanel;var inputListeners = new IInputListener[] { inputTextBox };while (true){ // 处理用户输入 ConsoleManager.ReadInput(inputListeners); Thread.Sleep(50); // 短暂休眠以避免CPU占用过高}

4、效果

03

项目地址

https://github.com/TomaszRewak/C-sharp-console-gui-framework

- End -

推荐阅读

0 阅读:0

玩点科技新鲜事

简介:感谢大家的关注