StellarX 星垣 · C++ GUI Framework

new 对象,就能写 GUI

面向 Windows 平台的轻量级 C++ 原生 GUI 框架, 为教学、课程设计、小型桌面工具和 GUI 原理学习而生。

StellarX 不是为了替代大型工业框架,而是希望让刚从控制台走向图形界面的 C++ 学习者, 能用更低的成本写出可运行、可交互、能读懂源码的桌面程序。

Windows Native C++17 EasyX + Win32 MIT License
StellarX / KEY5 Demo
StellarX KEY5 布局与托管重绘预览
v3.1.0 布局与托管重绘稳定化
Open Source 教学友好 · 源码可读
教学入门 从控制台到 GUI 的过渡
轻量原生 基于 EasyX + Win32
源码可读 理解事件、布局与重绘
小工具可用 适合课程设计和桌面工具

For Learning & Building

给不同阶段的 C++ 学习者一条更短的 GUI 路径

StellarX 的价值不在于堆功能,而在于把窗口、控件、事件、布局、重绘这些 GUI 基础概念组织成新手能理解、能实践的工程结构。
For Students

从控制台程序走向图形界面

不需要一开始就面对复杂框架和庞大配置,可以先用更直观的控件对象完成课程设计、小工具和可视化界面。

For Teachers

更适合讲清 GUI 基础概念

用窗口、按钮、标签、容器、表格、对话框等传统桌面概念,帮助学生建立从事件到绘制的完整认知。

For Developers

从源码理解框架如何工作

StellarX 不是黑盒,你可以继续向下阅读控件树、消息分发、布局解算、脏区重绘和托管绘制链路。

Showcase

从综合测试界面到小型工具示例

展示 StellarX 在控件组合、布局、表格、对话框与托管重绘场景下的实际表现。
32 位寄存器查看工具
Tool

32 位寄存器查看工具

标签、按钮、输入输出框、容器组合与小型工具界面组织。

桌面登录界面
Login UI

登录界面

背景图、文本标签、输入框与按钮组合出的基础桌面应用界面。

Table 表格控件
Table

Table 表格控件

展示结构化数据,支持表头、分页、边框、字体、背景等基础样式配置。

Dialog 与 MessageBox 示例
Dialog

Dialog / MessageBox

模态对话框、非模态对话框、消息框工厂和遮挡场景下的重绘处理。

Quick Start

五分钟跑起第一个窗口

安装 Visual Studio 与 EasyX 后,引入 StellarX 头文件和源码,就可以从最小窗口示例开始。
01 安装 Visual Studio 与 EasyX
02 引入 StellarX 头文件与源码
03 创建 Window 并运行事件循环
main.cpp
#include "StellarX.h"

int main()
{
    Window win(1300, 800, NULL, RGB(255, 255, 0), "欢迎使用 StellarX 星垣-GUI");

    win.draw();

    return win.runEventLoop();
}

Current Version

v3.1.0:布局系统与托管重绘稳定化

这个版本重点整理新布局 API、几何语义、Window / Canvas / TabControl / Table / Dialog 等控件的托管重绘链路, 让基础版在教学、小型工具和 GUI 原理学习场景下更加稳定。
当前边界: StellarX 基础版更适合教学、工具、小型桌面应用和 GUI 原理学习; 焦点系统、键盘事件系统、Tooltip 智能选位等能力仍在后续规划中。
Layout

布局 API 收口

新增四边锚点集合、单轴尺寸策略和单轴固定尺寸位移策略,同时保留旧接口作为兼容输入层。

Geometry

几何语义明确

区分设计态父局部矩形与运行态绘制矩形,降低 resize 与布局解算中的语义混乱。

Repaint

托管重绘稳定化

进一步收口脏区、coverage、overlay、Tooltip 临时浮层等链路,减少残影、错层和 hover 残留风险。

Use Cases

更适合这些场景

C++ 课程设计

给控制台项目加一个可视化界面,让学生能更快做出完整作品,而不是卡在复杂框架配置上。

社团教学与入门项目

用相对简单的 API 讲清楚窗口、控件、事件、容器、重绘等 GUI 基础概念。

个人小工具

适合做寄存器查看器、数据表格、简单管理系统、比赛可视化、实验辅助工具等小型桌面应用。

Roadmap

StellarX Pro 规划

基础版继续保持开源、稳定维护。后续会探索面向中小型桌面应用的 StellarX Pro, 包括新的渲染后端、更完善的布局系统、主题系统和更接近日常项目的开发体验。
01

基础版稳定

继续收口现有控件、布局、重绘、文档和示例,降低新手使用成本。

02

渲染后端抽象

为未来从 EasyX + Win32 迁移到更现代的渲染方案打基础。

03

Pro 版本探索

面向中小型桌面应用,尝试更强的控件体系、主题能力和工程化体验。

About

关于 StellarX 星垣

StellarX 起初来自教学、社团和小工具开发中的真实需求。 它不是为了追逐复杂概念而诞生,而是希望给刚学 C++、想做 GUI、想理解桌面程序的人, 提供一条更低门槛、更可阅读、更容易实践的路。 如果这个项目能让一个学生第一次做出自己的图形界面, 能让一个老师更容易讲清楚 GUI, 能让一个开发者从源码里看懂事件与重绘的流动, 那它就已经有意义。