9.2、Libgdx的输入处理之鼠标、触摸和键盘

简介: (官网:www.libgdx.cn) Libgdx支持的最主要的设备是desktop或浏览器的鼠标支持,Android的触摸屏支持和键盘的支持。我们接下来了解一下。

(官网:www.libgdx.cn

Libgdx支持的最主要的设备是desktop或浏览器的鼠标支持,Android的触摸屏支持和键盘的支持。我们接下来了解一下。

键盘

用户按下或释放一个按键生成了相应的事件。每个事件包含了一个 key-code来识别是哪个按键按下或释放。这些key-code在不同的平台是不同的。Libgdx要做的就是隐藏不同系统之前的差别。可以查阅Keys类。你可以通过轮询来判断是哪个键被按下。

单独的key-code不能告诉我们用户输入了什么。这通常是组合键造成这种困扰,比如可以通过shift和a来输入A。

鼠标和触摸

鼠标和触摸输入允许用户在屏幕上进行点击。两种输入机制都会返回点击的坐标。原点在左上角,x轴向右,y轴向下。

鼠标输入还包含额外的信息,通知哪个按键被按下。大部分鼠标包含左键、右键和中间键。另外,鼠标通常包含滚轮在应用中进行缩放和滚动等操作。

触摸输入没有按钮的概念。可能支持多点触摸,这取决于具体的设备。第一代Android手机仅仅支持单点触摸。现在大部分手机都支持多点触摸。

需要注意的是,触摸操作在不同的设备中有所差异。这就使得触摸事件触发后悔产生一定的问题。所以要尽可能多的在多台设备上测试你的游戏。

Libgdx抽象同一的对鼠标和触摸事件进行处理。我们可以将鼠标视为一种特殊的触摸。单点触摸,除了坐标外,还会报告按下的按键。触摸输入支持多点触摸,所有的触摸事件都会默认设置鼠标左键(只要你点击屏幕,Libgdx按你鼠标点击左键处理,只不过支持多点)。

需要注意的是Android坐标系统跟屏幕的方向无关。取决于你在应用中的设置。

鼠标和触摸都能通过轮询和事件驱动进行处理。
www.libgdx.cn版权所有,如需转载,注明出处)

目录
相关文章
vbs鼠标方法——模拟鼠标按键
'*********************************************************************** ' 代码开始 '*********************************************************************** Set mouse=New SetMouse mouse.
4706 0
|
5月前
|
Linux
GEC6818开发板触摸屏---点击屏幕获取触摸屏坐标
GEC6818开发板触摸屏---点击屏幕获取触摸屏坐标
|
6月前
|
图形学 Python
pyqt的学习(三)----鼠标点击和按键处理
pyqt的学习(三)----鼠标点击和按键处理
127 1
|
6月前
LabVIEW数字控件的键盘对话框
LabVIEW数字控件的键盘对话框
45 0
重新认识键盘与鼠标——键盘事件与鼠标事件
重新认识键盘与鼠标——键盘事件与鼠标事件
276 0
重新认识键盘与鼠标——键盘事件与鼠标事件
Qt实用技巧:将QWidget作为输入窗口,接收键盘消息、输入法并且控制输入法悬浮工具栏位置控制
Qt实用技巧:将QWidget作为输入窗口,接收键盘消息、输入法并且控制输入法悬浮工具栏位置控制
|
Python
Python 技术篇-pyHook键盘鼠标监听事件,监测鼠标键盘按键实例演示
Python 技术篇-pyHook键盘鼠标监听事件,监测鼠标键盘按键实例演示
408 0
Python 技术篇-pyHook键盘鼠标监听事件,监测鼠标键盘按键实例演示
HMI-5-[QtKeyEvent]:解决Qt键盘事件无法获取到上下左右等按键并实现键盘解析
HMI-5-[QtKeyEvent]:解决Qt键盘事件无法获取到上下左右等按键并实现键盘解析
437 0
HMI-5-[QtKeyEvent]:解决Qt键盘事件无法获取到上下左右等按键并实现键盘解析
|
C# Windows
触摸屏:屏幕键盘(虚拟键盘)解决方案
原文:触摸屏:屏幕键盘(虚拟键盘)解决方案  最近需要在win XP系统的工控机上进行程序的开发,工控机是电阻式触摸屏,需要在上面使用触摸键盘,使工控机可以脱离鼠标和键盘独立运行程序。调研后得到一系列的解决方案,mark如下: (1)自己在程序中开发虚拟键盘 这个是最先想到的,本人用C#进行开发,所以只关注C#相关的虚拟键盘开发。
2559 0