Windows 8技巧:Windows 8常用鼠标事件 分析介绍
发布时间:2022-05-29 20:48:54
本篇文章小编为大家介绍,Windows 8技巧:Windows 8常用鼠标事件分析介绍。需要的朋友参考下
在Windows 8中采用一些新的鼠标事件以替代以前Silverlight的鼠标事件,其常用事件如下:
PointerWheelChanged:鼠标中键滑动事件。
PointerPressed:鼠标点击下去的时候即触发事件。
PointerReleased:鼠标点击下去的时候释放鼠标时触发事件。
PointerEntered:鼠标进入有效范围之时触发一次。
PointerMoved:鼠标在有效范围之内移动之时触发事件。
PointerExited:鼠标退出有效范围之时触发事件。
在本文中将通过实例演示各种鼠标事件的响应.下面我们看实例源码如下:
复制代码代码如下:
其中Xaml.cs后台代码如下,
复制代码代码如下:
///
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
}
Point start = new Point();
///
///描述如何访问此页的事件数据。Parameter
/// 属性通常用于配置页。
protected override void OnNavigatedTo(NavigationEventArgs e)
{
}
//鼠标中键滑动事件
private void MainCanvas_PointerWheelChanged(object sender, PointerRoutedEventArgs e)
{
this.tbLabel.Text = "滑动了一次鼠标中箭";
}
//鼠标点击下去的事件
private void MainCanvas_PointerPressed(object sender, PointerRoutedEventArgs e)
{
start = e.GetCurrentPoint(MainCanvas).Position;
this.tbLabel.Text = "点击了一次鼠标或者屏幕";
}
//鼠标松键事件
private void MainCanvas_PointerReleased(object sender, PointerRoutedEventArgs e)
{
Point end = e.GetCurrentPoint(MainCanvas).Position;
double angle = 0;
//判断拖动鼠标角度
if (Math.Abs(end.X - start.X) < 1 && Math.Abs(end.Y - start.Y) < 1)
{
angle = 0;
}
else if (end.X > start.X)
{
if (end.Y > start.Y)
{
angle = 360 - Math.Atan((end.Y - start.Y) * 1.0 / (end.X - start.X)) * 180 / Math.PI;
}
else
{
angle = Math.Atan((start.Y - end.Y) * 1.0 / (end.X - start.X)) * 180 / Math.PI;
}
}
else if (end.X < start.X)
{
if (end.Y > start.Y)
{
angle = Math.Atan((end.Y - start.Y) * 1.0 / (start.X - end.X)) * 180 / Math.PI + 180;
}
else
{
angle = 180 - Math.Atan((start.Y - end.Y) * 1.0 / (start.X - end.X)) * 180 / Math.PI;
}
}
if (angle == 0)
{
this.tbLabel.Text = "点击了一次鼠标或者屏幕";
}
else if (angle >= 45 && angle < 135)
{
this.tbLabelFore.Text = "从下往上";
}
else if (angle
}
//鼠标移动事件
private void MainCanvas_PointerMoved(object sender, PointerRoutedEventArgs e)
{
Point point = e.GetCurrentPoint(MainCanvas).Position;
this.tbLabel.Text = "鼠标正在移动X:"+point.X+",Y:"+point.Y;
}
//鼠标移出范围事件
private void MainCanvas_PointerExited(object sender, PointerRoutedEventArgs e)
{
this.tbLabelNext.Text = "鼠标移出作用范围";
}
//鼠标进入范围事件
private void MainCanvas_PointerEntered(object sender, PointerRoutedEventArgs e)
{
this.tbLabelNext.Text = "鼠标进入范围";
}
}
下图是效果演示,如需源码请点击 Win8Event.zip 下载


猜你喜欢
- 很多小伙伴在使用电脑的时候需要使用到ip地址,但是很多小伙伴都不知道ip地址是可以修改的吧,今天就和大家一起来学习一下怎么修改ip地址吧。
- 打开电脑连接宽带的时候,电脑提示错误651,win10宽带连接错误651怎么办呢?其实出现651是由于用户终端电脑与网通局端设备连接不通所导
- WPS文字,习惯用Word的朋友或者没用过它的朋友,都不知道的是什么东东。以下是小编为您带来的关于什么是WPS,希望对您有所帮助。什么是WP
- 复合型图表可以让用户跳出一套统一的外观来显示各个数据系列这种限制,让图表中的每个数据系列都显示为不同类型的图表。下面让小编为你带来excel
- 大家知道,如果数字是文本型的,是不能进行加减乘除的。这时候就需要把文本型数字全部转化为数字。如图:请把第一列的文本型数字转化为数字 第一步:
- 第1步,打开Word2010文档窗口,切换到“插入”功能区。在“文本”分组中单击“文档部件”按钮,然后在打开的菜单中选择“构建基块管理器”命
- QQ文件夹有QQ的安装文件夹和临时文件夹,我们QQ聊天之后都有聊天记录。还有别人发给我们的文件,我们接收了也是保存在QQ文件夹里面的,上网聊
- 在输入完公式后,用户可通过命令、宏或错误值来检查公式计算是否有错。如果有错误,用户可通过公式中返回错误值的类型来分析错误原因,还可以使用Ex
- DECIMAL 函数将按指定基数表示的文本数字转换为十进制数字。适用版本Excel 2013+说明DECIMAL 函数将按指定基数表示的文本
- 将一幅或多幅图像添加到您的思维导图。 为此,先要选择一个主题。今天带来的就是思维导图simplemind插入图像的教程。将一幅或多幅图像添加
- Win7旗舰版系统用户在日常工作开机时电脑出现蓝屏,并在蓝屏信息中发现0x0000007b代码,Win7旗舰版开机蓝屏0x0000007b怎
- 打印时,为了节约成本,我通常都会把一些小尺寸的表格设置成为右对齐且文字环绕方式。但是在排版的过程中发现表的右边框总是超出版心(正文边框)约2
- 微星小飞机是电脑diy用户非常喜欢使用的一款显卡测试工具,将显卡超频和硬件检测合为一体。可支持自家显卡的检测,还可支持其他品牌的显卡,操作十
- 当我们的电脑使用久了,就很容易会遇到各种各样的问题,近期就有Win10用户反映想要拖拽dwg文件到cad中打开时,发现拖拽不了。对于这一情况
- 很多人都想参与下windows10技术预览版,在此之前,如果你还没有成为Insider项目参与者,还请先注册成为Windows Inside
- 去哪儿旅行如何退票?去哪儿旅行是一款网上购票软件,我们在去哪儿旅行中购买完车票,因为时间或者其他原因,想要进行退票,但是不知道要怎么进行操作
- 如何在Windows 10 中设置全新的modern时钟托盘?Windows 10带来了大量的新功能以及一些老功能的提升。微软开发的新时间托
- PPT中怎么设计精美图标?ppt中想要绘制一个漂亮的图标,该怎么绘制呢?下面我们就来看看ppt画漂亮图标的技巧,很简单,感兴趣的朋友可以进来
- word2013罗马数字字磅的字体怎么改成中文字号?以往我们选择字体大小的时候,都是选择32磅值字体,现在想换成大一、大二字号字体该怎么办呢
- 很多网友下载的excel表格是.XLSX格式的,用电脑上安装的excel打不开。造成这个问题的原因是因为,你的电脑安装的是excel2003