# BUG-20260511-0009 > 适用场景:记录问题本身,不展开完整修复方案。修复内容写入对应的 Fix 文档。 ## 基本信息 - ID: BUG-20260511-0009 - 标题: TabControl::indexOf 未命中时返回最后索引 - 状态:已修复 - 严重性:S3 - 优先级:P2 - 模块: TabControl - 版本 / 分支: 当前工作区 - 环境: Windows / EasyX / z-testDome 回归场景 - 发现人: Codex 巡检 - 关联 Fix ID: Fix-BUG-20260511-0009 ## 问题描述 - 现象: `TabControl::indexOf(const std::string& tabText) const` 在未找到目标页签时返回循环后的最后索引。 - 影响范围: 依赖 `indexOf()` 判断页签是否存在的调用方可能把“不存在”误判为最后一个页签。 - 期望结果: 找到匹配页签时返回对应索引;未找到时返回 `-1`。 - 实际结果: 未找到时返回最后一个页签的索引。 ## 复现信息 - 前置条件:[可选] - 复现步骤: 1. 构造包含至少一个页签的 `TabControl`。 2. 调用 `indexOf()` 查询不存在的页签文本。 3. 观察返回值。 - 复现概率:必现 - 最小复现 Demo:[可选] - 证据:源码巡检可证 ## 初步分析 - 疑似位置: `TabControl.cpp::indexOf` - 触发条件: 查询文本不存在。 - 相关线索: 函数名和预期语义要求“不存在返回 -1”,但旧实现返回 `idx`。 - 最近相关改动:[可选] ## 跟踪信息 - 首次发现时间: 2026-05-11 - 最后更新时间: 2026-05-11 - 修复版本: 当前工作区 - 验证版本: KEY1 ~ KEY6 编译验证通过 - 备注:[可选]