草庐IT

c# - 是否可以让我的 c# wpf 程序知道用户是否有触摸屏?

我有一个带有刷卡系统的登录应用程序,人们只有在拥有触摸屏时才能使用该系统。他们可以通过刷个人图案刷卡码登录。如果用户有触摸屏,是否可以在C#或WPF中checkin?即使他当时没有使用触摸功能? 最佳答案 在C#代码中,通过在中使用System.Windows.Input命名空间来确定触摸屏是否存在(但不检查它是单点还是多点触摸设备)PresentationCore.publicboolHasTouchInput(){foreach(TabletDevicetabletDeviceinTablet.TabletDevices){//

c# - 应用程序,提高触摸事件的性能

基本上,我有一个大小为8000像素x8000像素的应用程序。我们可以放大以查看特定部分,例如radio中的示例,或者我们可以缩小以查看所有内容。汽车的每个部分都是一个控件,我们可以在双触控或多点触控显示器上用手指操作。我的问题是:为了操纵一个控件,例如音量按钮,用户需要像在现实生活中一样移动鼠标,所以要进行圆周运动。使用鼠标,一切都很完美,它会立即响应,没有任何延迟。我使用OnMouseLeftButtonDown、OnMouseMove等。对于触摸,计算机似乎很难获得触摸位置并且存在巨大的滞后,尤其是当用户同时用2个手指移动2个不同的按钮时。我使用OnTouchDown、OnTouc

c# - 从触摸屏重定向/重新映射/预过滤光标输入

我的问题好的,对此的基本答案是使用:Cursor.Clip=newRectangle(x1,y1,x2,y2);但我的问题有点复杂。我需要它做的是正确地将自己映射到特定的窗口边界,这样触摸输入将被限制在那个窗口,但会正确地将自己剪裁到窗口,这样当我触摸左上角时触摸屏的一角或右下角,它会将光标放在窗口的左上角或右下角。使用Cursor.Clip不会这样做,并且我在触摸屏上触摸的所有超出该剪辑区域的内容都会映射到离我触摸的位置最近的窗口边缘。有什么可以让我预过滤鼠标位置以便正确调整它的边界吗?如果其他都失败了或者,我可以尝试找到一些代码,将鼠标输入转换为TUIO输入,并以此方式将其输入到应

javascript - 如何删除 javascript 中的事件监听器?

我想知道如何在添加一个事件监听器后删除它,就像您在jquery中使用on和off的方式一样?document.removeEventListener('touchstart');document.addEventListener('touchstart',function(e){closePopupOnClick(e,popup);});但这实际上并没有删除事件监听器。如果我将addEventListener代码放在一个函数中并将该函数传递给removeEventListener它将不起作用,因为您不能将参数传递给该函数。有人知道怎么做吗? 最佳答案

javascript - jQuery Unslide - 触摸不起作用

我已经解决了这个问题,我发帖只是为了帮助其他人节省一些时间。我正在为一个商业网站使用unslider,我正在制作一个响应式网站,因此向slider添加触摸支持的功能很有吸引力。不幸的是,它不能像作者声称的那样开箱即用。 最佳答案 更新我使用的unslider插件已经过时了。我是从我第一次找到它的unslider.com下载的(它在那里仍然是一个过时的版本),因此我遇到了困难。如果您需要获取最新版本,请访问:https://github.com/idiot/unslider/如果您想查看我的问题报告:https://github.co

javascript - 溢出 :auto not working in touch devices(iOS)

我已经使用twitterbootstrap实现了一个网站。在站点的顶部,我使用了一个导航栏,在其中使用了一个下拉菜单。下拉菜单由和标签组成。我正在显示该下拉菜单中的成员列表。当成员列表增长时,下拉菜单水平增长,为此我在下拉菜单类中添加了overflow:auto。现在它显示一个垂直滚动条,并且在浏览器中工作正常。但同样的事情在iPad和其他iOs设备上不起作用。我用谷歌搜索了一下,发现-webkit-overflow-scrolling:touch应该可以。但这对我不起作用。还有很多其他解决方案,但不幸的是对我不起作用。有没有更好的解决方案。可能是我们可以使用css本身做的任何事情。

javascript - 动态禁用 SVG 元素的触摸操作(过度滚动)

我在Chrome上遇到触摸屏过度滚动的问题。我有一个包含SVG元素的文档,其中包含一些形状,比如一个矩形:现在,我想使矩形可拖动,这意味着我想禁用相应上的各种触摸操作。元素,通过设置它的样式属性touch-action:none.这在除Chrome之外的所有桌面浏览器上都能正常工作。在Chrome上,当我在一个矩形上触摸并移动时,浏览器的过度滚动功能会启动。这会导致浏览器窗口笨拙地移动,以及我在矩形上设置的所有指针事件都被取消。即pointermove注册几分之一秒,然后在过度滚动开始时停止。pointerup即使在触摸被释放时也不会被调用。现在,如果我有一个HTML元素而不是SVG元

javascript - 如何防止移动浏览器中的模拟鼠标事件?

移动浏览器模拟鼠标事件以支持仅将处理程序附加到鼠标事件的网站。但是,如果您想实现两种交互模型-一种用于鼠标事件,一种用于触摸事件-那么防止浏览器模拟鼠标事件会很有帮助。在iOSSafari上,这非常简单-只需在touchend上运行preventDefault即可:jQuery(document).on('touchend',function(e){//Dosomelogice.preventDefault();});这很正常。不幸的是,Android的默认浏览器和Dolfin都没有使用这种技术取消鼠标模拟。(当preventDefault在touchstart上运行时,Dolfin将

javascript - Sencha Touch - Map.Geo = null

我正尝试在SenchaTouch上学习这个简单的教程http://dev.sencha.com/deploy/touch/getting-started.html我不断收到JavaScript错误:未捕获的TypeError:无法调用null的方法“on”这与未正确设置的Map.geo属性有关。我使用的是与链接上相同的代码。我试过换一个盒子,以防是防火墙问题,但还是出现了同样的错误。 最佳答案 在您的应用程序JavaScript文件中,将getLocation:true替换为useCurrentLocation:true。

javascript - 在 Microsoft Surface 设备上与 Firefox 交互和触摸?

在Microsoft触摸设备(例如SurfacePro)上,在Chrome和IE上,可以捕获鼠标/指针/触摸事件,并在此过程中防止滚动页面。在Firefox上,在通过触摸停止页面滚动的同时获得相同级别的事件似乎是不可能的。您可以通过阻止“滚轮”来停止页面滚动:can.addEventListener('wheel',function(e){console.log('stoppingwheel')e.preventDefault();},false);但Firefox似乎不会发出您可以监听的鼠标/指针/触摸事件,因此您无法执行相同的操作。这里有一个活生生的例子:https://codep