#748 – 获得按下时对应位置点的大小(Getting the Size of a Contact Point during Raw Touch)

翻译 2017年07月07日 16:32:39

原文地址:https://wpf.2000things.com/2013/02/04/748-getting-the-size-of-a-contact-point-during-raw-touch/

在低级别的触屏Touch 事件中,我们可以获得手指与屏幕接触的位置的面积大小。获得这个信息可以通过TouchPoint.Bounds 属性(请注意,即使驱动层不支持,该属性也有值,可能会有为0的大小)。

下面是一个例子,在触摸的位置根据接触的大小画一个椭圆。

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        TouchEllipses = new Dictionary<int, Ellipse>();
    }
 
    private Dictionary<int, Ellipse> TouchEllipses;
 
    private void Canvas_TouchDown(object sender, TouchEventArgs e)
    {
        canvMain.CaptureTouch(e.TouchDevice);
        TouchPoint tp = e.GetTouchPoint(canvMain);
 
        Ellipse el = new Ellipse();
        el.Stroke = Brushes.Black;
        el.Fill = Brushes.Black;
 
        el.Width = tp.Bounds.Width > 0 ? tp.Bounds.Width : 50;
        el.Height = tp.Bounds.Height > 0 ? tp.Bounds.Height : 50;
 
        Canvas.SetLeft(el, tp.Position.X - (el.Width / 2));
        Canvas.SetTop(el, tp.Position.Y - (el.Height / 2));
 
        canvMain.Children.Add(el);
        TouchEllipses.Add(e.TouchDevice.Id, el);
 
        e.Handled = true;
    }
 
    private void Canvas_TouchUp(object sender, TouchEventArgs e)
    {
        canvMain.Children.Remove(TouchEllipses[e.TouchDevice.Id]);
        TouchEllipses.Remove(e.TouchDevice.Id);
 
        e.Handled = true;
    }
}


相关文章推荐

#424 – 使ListBox 中每一项保持一致大小(Getting Data-Bound Items in a ListBox to Be a Consistent Size)

 之前演示了如何通过数据绑定向ListBox 中添加丰富的内容。 但问题是在垂直方向上各项的内容并没有对齐。我们在数据模板中使用的是StackPanel ,它会自动根据内容调整大小。 ...

获得按下的键对应的值

  • 2014-09-16 16:18
  • 961KB
  • 下载

ways of getting size to machine size

Sometimes we need to get a structure or something's size in machine's word-length. But there is one...

Android Studio中怎么引用AAR包 以及 引用时出现的问题 (Error:duplicate files during packaging of APK.......)

在AS中引用aar包时出现 "Error:duplicate files during packaging of APK.......", 如何解决 ??

设定义一个类 整型数组的大小,表示可放元素的个数整型数组当前的元素个数,初始应为0,当elem等于size时,数组满

设定义一个类:    class ListArray {    private:      int size;   //整型数组的大小,表示可放元素的个数    ...

ios 通过设置UI控件的center和size来设置位置时需注意!

今天在设置按钮位置时,使用center和size属性来控制,但是发现怎么也不对,研究了一下发现,当使用UI控件的center和size属性来控制位置时,好像是有先后顺序的: 下面看一段代码,将红色的v...

raw contact子表数据查询

RAW_CONTACT子表的查询很有意思。 RAW_CONTACT子表有很多。主要的有: android.provider.ContactsContract.CommonDataKinds.Str...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)