# BUG-20260929-0001 > 适用场景:记录问题本身,不展开完整修复方案。修复内容写入对应的 Fix 文档。 ## 基本信息 - ID: BUG-20260929-0001 - 标题: Table 运行期重置后页码标签被旧分页按钮快照覆盖 - 状态:已修复 - 严重性:S2 - 优先级:P1 - 模块: Table / Label / Button / 背景快照 - 版本 / 分支: 当前工作区 - 环境: Windows / EasyX / KEY1 - 发现人: 用户 - 关联 Fix ID: Fix-BUG-20260929-0001 ## 问题描述 - 现象: KEY1 页签 1 中点击页内按钮重置表头和数据后,分页区中间的页码标签只显示一部分;触发表格重绘或与其他页签按钮进行 hover 交互后恢复完整。 - 影响范围: Table 运行期数据变化导致表格宽度及分页控件位置同时变化的场景。 - 期望结果: 重置后的首帧立即完整显示新页码,不依赖后续 hover、翻页或页签重绘修复。 - 实际结果: 页码已经绘制,但随后移动的分页按钮回贴旧位置背景快照,覆盖了新页码的一部分。 ## 复现信息 - 前置条件: 启动 KEY1 并进入页签 1。 - 复现步骤: 1. 点击页签 1 内用于重置表格的“按钮”。 2. 不移动鼠标,立即观察“上一页”和“下一页”之间的页码标签。 3. 对表格或页签 2 按钮进行 hover 交互,触发后续重绘。 - 复现概率:稳定复现 - 最小复现 Demo:KEY1 页签 1 - 证据:用户截图中重置后的页码标签首帧显示不全,后续重绘恢复。 ## 初步分析 - 疑似位置: `Table::drawPageNum()`、`Table::drawButton()` 和内部控件 `Control::setX()` 的调用顺序。 - 触发条件: 新旧表格宽度不同,分页 Label 和分页按钮需要同时横向移动。 - 相关线索: - 旧顺序先绘制页码,再在 `drawButton()` 中移动分页按钮。 - 分页按钮移动时会通过 `discardBackground()` 回贴旧背景。 - 旧按钮区域与新页码区域相交,导致新页码被局部擦除。 - 最近相关改动:[可选] Table 页码强制设脏和分页按钮整表重绘链已经存在,但未覆盖内部控件同帧搬移后的旧快照覆盖。 ## 跟踪信息 - 首次发现时间: 2026-09-29 - 最后更新时间: 2026-09-30 - 修复版本: 当前工作区 - 验证版本: 2026-09-29 非 UI 全矩阵通过;2026-09-30 用户完成 KEY1 至 KEY6 手工回归,暂未发现明显问题 - 备注:[可选]