鼠标输入处理
文章目录
- 鼠标输入处理
- 1、概述
- 2、鼠标移动事件
- 3、鼠标点击事件
- 4、鼠标点击位置
- 5、鼠标双击
- 6、鼠标进入和离开事件
- 7、总结
在本文中,将介绍如何在 SDL2 中检测和处理鼠标输入事件,包括鼠标移动、按钮点击以及窗口进入/退出。
1、概述
在本文中,我们将详细介绍如何检测和响应两种主要的鼠标输入形式——用户移动光标以及用户点击鼠标按钮。
当检测到这些形式的输入时,一个 SDL_Event 会被推送到事件队列中。我们可以通过我们的事件循环捕获这些事件,并根据需要进行处理。
本文基于我们之前的学习内容,其中我们有一个初始化 SDL 并创建窗口的 Window 类,以及在主函数中设置的应用程序循环:
#include <SDL2/SDL.h>class Window {
public:Window(){SDLWindow = SDL_CreateWindow("My Program", SDL_WINDOWPOS_UNDEFINED,SDL_WINDOWPOS_UNDEFINED, 200, 200, 0);}void Render(){SDL_FillRect(GetSurface(), nullptr,SDL_MapRGB(GetSurface()->format, 50, 50, 50));}void