如何用Java开发多点触控应用程序?
2022-09-02 13:48:27
预见到多点触控界面变得更加普遍的那一天,Java中是否有可用于开发触控应用程序的库?我正在寻找类似于MouseListener / MouseMotionListener / MouseWheelListener的接口。
预见到多点触控界面变得更加普遍的那一天,Java中是否有可用于开发触控应用程序的库?我正在寻找类似于MouseListener / MouseMotionListener / MouseWheelListener的接口。
MT4j项目拥有在java中开发多点触控应用程序所需的一切。所有众所周知的多点触控手势都已经内置,可以像监听鼠标事件一样简单地访问(例如:component.addGestureListener(..))。它还具有硬件加速场景图,类似于JavaFX。您甚至可以通过将一只或多只鼠标连接到机器来模拟多点触控输入。查看详情 http://www.mt4j.org
Sparsh仍然在我的书签中,从我上次研究多点触控Java解决方案开始。
虽然不像典型的鼠标侦听器或单击侦听器那样直接,但它仍然提供了合理的接口。
您需要侦听类来实现 ,这需要方法定义。sparshui.client.Client
processEvent
public void processEvent(int groupID, Event event) {
if(event instanceof TouchEvent) {
TouchEvent e = (TouchEvent)event;
if(e.getState() == TouchState.BIRTH) {
//do initial touch stuff
} else if(e.getState() == TouchState.MOVE) {
//do dragging stuff
}
}
else if(event instanceof DragEvent) {
DragEvent e = (DragEvent)event;
//do DragEvent specific stuff
} else if(event instanceof RotateEvent) {
RotateEvent e = (RotateEvent)event;
//do RotateEvent specific stuff
} else if(event instanceof ZoomEvent) {
ZoomEvent e = (ZoomEvent)event;
//do ZoomEvent specific stuff
}
//several other gesture types....
}
之后,您需要启动手势识别服务器,并传入您的组件
new ServerConnection("localhost", objectImplementingClientInterface);
查看网站上的代码示例应该可以让您对框架有一个很好的了解。