Files
XCEngine/docs/api/XCEngine/Input/InputManager/ProcessMouseButton.md

37 lines
906 B
Markdown
Raw Normal View History

2026-03-26 16:45:24 +08:00
# InputManager::ProcessMouseButton
2026-03-26 17:39:53 +08:00
向输入系统注入一个鼠标按键事件。
2026-03-26 16:45:24 +08:00
```cpp
void ProcessMouseButton(MouseButton button, bool pressed, int x, int y);
```
2026-03-26 17:39:53 +08:00
## 行为说明
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
当前实现会:
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
- 如果未初始化或按钮索引越界,直接返回
-`m_mouseButtonDown[index]` 更新为 `pressed`
- 只有在 `pressed == true` 时,才把 `m_mouseButtonDownThisFrame[index]` 设为 `true`
- 构造 `MouseButtonEvent`
- 同步触发 `m_onMouseButton`
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
这意味着当前实现只显式记录“按下边沿”,没有单独的 “mouse up this frame” 缓存。
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
## 参数
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
- `button` - 鼠标按键。
- `pressed` - `true` 表示按下,`false` 表示释放。
- `x` - 事件位置 X。
- `y` - 事件位置 Y。
## 返回值
- 无。
2026-03-26 16:45:24 +08:00
## 相关文档
2026-03-26 17:39:53 +08:00
- [返回类型总览](InputManager.md)
- [OnMouseButton](OnMouseButton.md)
- [IsMouseButtonClicked](IsMouseButtonClicked.md)