问题标签 [hittest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1502 浏览

listbox - WPF 在列表框中实现橡皮筋类型选择

我试图允许Listbox用户想要选择的项目中的橡皮筋或套索类型选择。我Listbox在一个网格中,我在网格中添加了一个控件,该控件在我要选择的区域上绘制一个矩形。我已经尝试测试这些Listbox项目以查看它们是否在矩形内,但它们似乎都返回它们没有。当查看VisualTreeHelper.GetDescendantBounds这些项目时(就像我对矩形所做的那样,得到它的 X,Y)它总是将 X,Y 返回为每个项目的 0,0。我在命中测试方面做错了什么?

0 投票
1 回答
1854 浏览

c# - 命中测试...是否可以测试列表框或其他项目控件中的项目

我试图在列表框中点击测试项目但无济于事。可能吗?VisualTreeHelper 显示 x,y 坐标为每个项目返回 0,0,其中每个项目似乎都可以排除命中测试。有谁知道解决方案或解决方法?

0 投票
1 回答
950 浏览

wpf - wpf - 我如何在滚动查看器中测试滚动条?

有人可以告诉我如何在 WPF 中测试滚动查看器的滚动条吗?

谢谢,

安迪

后面的代码...

0 投票
1 回答
1631 浏览

opengl - 在复杂多边形中查找一个点

这个多边形的形状可以像 C

我尝试了位于此处的公式 如何确定 2D 点是否在多边形内?

但是它实际上并不能正确预测该点是否在多边形中。

0 投票
5 回答
12040 浏览

javascript - 如何找到位于给定 (X,Y) 位置的 DOM 节点?(命中测试)

我有 HTML 文档中某个点的坐标 (X,Y)。如何确定这些坐标处的 DOM 节点?

一些想法:

  • 是否有一个我错过的 DOM 命中测试函数,它需要一个点 (X,Y) 并在那里返回 DOM 元素?
  • 有没有一种有效的方法来遍历 DOM 元素树以找到包含元素?由于绝对定位的元素,这似乎很棘手。
  • 有没有办法在给定的(X,Y)位置模拟事件,以便浏览器最终创建一个具有指向元素的指针的事件对象?

(背景:我将 Qt 的 QWebView 嵌入到本机应用程序中。我正在尝试根据鼠标悬停的 DOM 节点来改变 Qt 小部件提供的上下文菜单,但 Qt 4.5 无法对 DOM 元素进行测试,尽管该功能将在 4.6 中推出。所以我希望我可以将坐标放入 Javascript 并使用 DOM API 进行命中测试。)

谢谢!

0 投票
2 回答
8819 浏览

c# - WPF 中的命中测试

我有一个EllipseCanvas我正在对它进行命中测试。每次单击 的笔划时Ellipse,测试通过。如果我在 中间单击Ellipse,则测试失败。这很好!

在我这样填充椭圆后:myEllipse.Fill = new SolidColorBrush(Colors.Blue);,当我点击中间时,测试也通过了Ellipse

我怎样才能禁用它?(即使Ellipse是 Filled,当我点击中间时测试也会失败)谢谢!

0 投票
1 回答
6307 浏览

iphone - hitTest 中的 touchesForView

我有一个像容器一样使用的简单 UIView。如果我写这段代码:

不工作!我想在 touchesBegan() 之前在 hitTest() 消息中获取触摸计数!可能吗?

我有这个层次结构:

当触摸我的UIView单击)时,容器会移动。当我在我的 上双击(两根手指)时UIView,孩子UIScrollView不适用于Zoom(例如)。所以我有想赶上触数。

如果触摸数等于一,则hitTest在我的UIView容器上返回“self”。否则,如果触摸数大于一(== 2),hitTest则返回“scrollview”指针。

换句话说,我想将两个手指事件捕获到 hitTest() 消息/事件中。

0 投票
2 回答
2542 浏览

c# - WPF 中 Silverlight 的 FindElementsInHostCoordinates 等效项是什么?

我想对 WPF Canvas 组件执行矩形命中测试,以获得与 Rectangle 框架元素重叠的控件。我找到了 Silverlight 的VisualTreeHelper.FindElementsInHostCoordinates方法,但显然它在 WPF 中不可用。

实现此类功能的最佳方法是什么?

0 投票
1 回答
1310 浏览

uiwebview - 以 UIWebView 结束的触摸的 Hittest

当用户触摸我的 UIWebview 时,我正在使用 hittest 来接听。我需要知道用户何时停止触摸视图,但我没有从 hittest 获得任何事件。是否有其他功能可以做到这一点?

0 投票
1 回答
2282 浏览

wpf - 我可以只为右键事件将 IsHitTestVisible 设置为 false 吗?

显然,对这个问题的直截了当的回答是“否”,但对我来说达到这种效果的最佳方法是什么?为了解释,这里有一些背景......

我有一个应用程序,它显示一个图像以及该图像上的几层叠加形状。所有这些都放置在一个网格单元中,彼此重叠,图像位于局部 z 顺序的底部。为了提高速度,叠加层被实现为从 FrameworkElement 派生的类,它们创建和管理自己的视觉效果。

这是一个基本图(尽管分解为 3D),说明了层的排列方式以及它们具有/需要的交互:


重叠控制.png http://www.afterbang.co.uk/mal/stackoverflow/overlapped_controls.png


如您所见,上层叠加层必须允许用户在图像的任何位置拖出一个新矩形。为此,我给了它一个透明的背景,就像一块可以在上面画画的玻璃板。这样做的明显缺点是它会阻止所有鼠标事件向下传递到较低层。

我真的很想只将鼠标左键的事件捕获顶层的透明区域中,并让其他事件在 z 顺序的下方进一步命中层。

对于这种事情,我应该遵循 WPF 模式吗?有什么最佳实践或技术吗?

我对 WPF 还很陌生,但想编写一个与 API 一致的解决方案。谢谢。