Finalize layout stage 2 fixes and refresh regression scenes

This commit is contained in:
Codex
2026-04-16 11:40:39 +08:00
parent b7ad960518
commit 738cf035bb
20 changed files with 1470 additions and 308 deletions
+12 -2
View File
@@ -101,11 +101,16 @@ private:
bool model() const override { return false; };
public:
StellarX::ControlText textStyle; // 文本样式
// 修改表格运行态 X,并同步内部页脚元素位置
void setX(int x) override;
// 修改表格运行态 Y,并同步内部页脚元素位置
void setY(int y) override;
// 修改表格运行态宽度;当前支持横向拉伸
void setWidth(int width) override;
// 修改表格运行态高度;当前版本作为行为边界明确忽略纵向 Stretch
void setHeight(int height) override;
public:
// 构造一个基础表格,后续通过表头和数据初始化内容
Table(int x, int y);
~Table();
@@ -113,11 +118,16 @@ public:
void draw() override;
//事件处理
bool handleEvent(const ExMessage& msg) override;
// 只清理分页按钮的 hover / tooltip / 临时按下态,不触发表格整体重绘。
bool clearTransientMouseState() override;
// Table 重绘时会一并绘制页码 Label 和分页按钮,coverage 需要把这些内部绘制单元并入。
RECT getManagedRepaintCoverageRect() const override;
//设置表头
// 设置表头
void setHeaders(std::initializer_list<std::string> headers);
//设置表格数据
// 设置表格数据(单行追加)
void setData(std::vector<std::string> data);
// 设置表格数据(多行覆盖)
void setData(std::initializer_list<std::vector<std::string>> data);
//设置每页显示的行数
void setRowsPerPage(int rows);