关于鼠标,你知道多少?

鼠标重要性不必多说,我们这些"小毛孩"可能不敢想象没有鼠标时的计算机是如何操作的,我承认鼠标不是不可替代,但也已不可或缺.

大多鼠标编程都与API函数有着某种关系,毕竟鼠标的操作已进入了非纯软件领域.因此,要对鼠标下刀,就得熟悉相关的API函数,这点无可厚非.

今天我们就对鼠标编程进行一个大杂汇.工作中能否用到,不太清楚.....

下面就分四个部分讲述我们与鼠标的不解之缘.

一.应用篇:

1.利用鼠标绘图

很多很多书籍,很多很多网页都在讲述这个东东,为了不找骂,这里直接附代码!

实现:利用窗体的MouseDown,MouseMove,MouseUp事件及Pen,Graphics等类实现.

代码:

鼠标绘图
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace ziyiMouse1
{
   public partial class Form1 : Form
   {
     public Form1()
     {
       InitializeComponent();
       pen = new Pen(Color.FromName("black"));//始末画笔
       graphics = CreateGraphics();//初始画板
     }
     public bool G_OnMouseDown = false;//控制画图
     public Point lastPoint = Point.Empty;
     public Pen pen;
     public Graphics graphics;
     //将上一个点的LastPoint的值设为目前点的currPoint值.
     private void Form1_MouseMove(object sender, MouseEventArgs e)
     {
       if (lastPoint.Equals(Point.Empty))
       { lastPoint = new Point(e.X, e.Y); }
       if (G_OnMouseDown)
       {
         Point cruuPoint = new Point(e.X, e.Y);
         graphics.DrawLine(pen, cruuPoint, lastPoint);
       }
       lastPoint = new Point(e.X, e.Y);
     }
     //当鼠标离开时把控制画图设为false;
     private void Form1_MouseUp(object sender, MouseEventArgs e)
     {
       G_OnMouseDown = false;
     }
     private void Form1_MouseDown(object sender, MouseEventArgs e)
     {
       G_OnMouseDown = true;
     }
     private void Form1_Load(object sender, EventArgs e)
     {
     }
   }
}

效果:

时间: 2024-09-17 03:40:09

关于鼠标,你知道多少?的相关文章

总结Selenium WebDriver中一些鼠标和键盘事件的使用

在使用 Selenium WebDriver 做自动化测试的时候,会经常模拟鼠标和键盘的一些行为.比如使用鼠标单击.双击.右击.拖拽等动作:或者键盘输入.快捷键使用.组合键使用等模拟键盘的操作.在 WebDeriver 中,有一个专门的类来负责实现这些测试场景,那就是 Actions 类,在使用该类的过程中会配合使用到 Keys 枚举以及 Mouse. Keyboard.CompositeAction 等类. 其次,在实际测试过程中,可能会遇到某些按键没办法使用 Actions.Keys 等类来

HTML5 Canvas捕获用于游戏开发的键盘、鼠标和触摸事件

学习如何处理键盘和鼠标事件,如何阻止 Web 浏览器的默认事件行为,以及如何向游戏对象的某种逻辑表示传播事件.此外,还将学习如何处理 iPhone 和 iPad 等移动设备上与设备无关的(device-agnostic)输入. 令拥有 Flash 或 Silverlight 背景的开发人员感到惊讶的是,为 HTML5 Canvas 编写的应用程序在处理用户输入方面并没有什么特立独行之处.实质上,从启用了 JavaScript 的 Web 浏览器诞生之初开始,HTML 用户输入就涉及到使用内置于浏

怎么通过“适配器”获得窗体上鼠标选择的listview单元格的坐标?

问题描述 怎么通过"适配器"获得窗体上鼠标选择的listview单元格的坐标? 怎么通过"适配器"获得窗体上鼠标选择的listview单元格的坐标?怎么才能得到坐标相对屏幕的距离?

救命啊!鼠标事件问题

问题描述 问题:怎么让鼠标事件穿透控件?比如:PictureBox1里面有个PictrueBox2,一样大小,那么如何让鼠标事件穿过PicturBox2,来到PictureBOx1 解决方案 解决方案二:你是想让一次点击执行两个事件吗?可以吧两次的事件都写在上面的控件的事件中解决方案三:在处理PictureBox2的事件时发送相应的消息到PictureBox1.解决方案四:哪个触发事件没关系,看你想操作谁就行了解决方案五:说错这种奇葩的功能还不如说说你的需求你要做什么

Ubuntu系统鼠标指针上下跳动该怎么办?

  可能不少网友都遇到了这个问题,就是鼠标指针一闪一闪的,一会而消失一会儿出现的样子.这个经验告诉你怎么做可以消除这个问题,保证99.5%有效率. 1.打开系统设置 2.点击显示 3.然后切换到"未知显示器",你会发现未知显示器是开启的状态 4.现在你只需要把未知显示器设置为"关闭"状态就可以了.然后点击应用,系统会提示你是否保存设置,注意别点错了.

win8中怎么修改鼠标滚轮每次滚动行数

  1.首先,咱们需要返回到win8系统的传统桌面位置,之后,咱们同时按下win8电脑键盘上的win+C快捷键打开电脑的超级按钮,在这个超级按钮中,咱们就可以看到设置选项了,咱们点击这个设置选项.   2.在打开的设置窗口中,咱们依次点击"更改电脑设置"选项--然后点击"电脑和设备"--"鼠标和触摸板",在新打开的窗口中,咱们就可以看到设置滚轮的选项了,我们可以设置滚动一格为一个屏幕,或者自定义滚动一次的行数,至于到底要如何进行设置,大家可以根据

C#定义鼠标指针形状

在Windows应用程序中,通过设置控件的Cursor属性可以定义鼠标的显示形状.控件(如Button控件)的Cursor属性用于设置鼠标指针的类型,默认为Default. 语法: public virtual Cursor Cursor { get; set; } 属性值:一个Cursor,表示当鼠标指针位于控件上时显示的光标. Cursor:是一个值,该属性值如表所示. 表 Cursor属性的值 值 说明 AppStarting 获取在应用程序启动时显示的光标 Arrow 获取箭头光标 Cr

控制-android 4.X如何模拟鼠标或者直接用代码调出鼠标光标

问题描述 android 4.X如何模拟鼠标或者直接用代码调出鼠标光标 最近在做android设备之间的远程控制,需要在一个android客户端(装了客户端软件)中控制另一android服务器端(装了服务器后台程序),在服务器调出android鼠标光标,请问怎么实现啊?求助.....大侠们.....

关于toolbar鼠标悬浮的时候,加载工具提示的问题?

问题描述 关于toolbar鼠标悬浮的时候,加载工具提示的问题? 关于toolbar鼠标悬浮的时候,加载工具提示的问题?怎么样读取工具提示,工具提示怎么和toolbar关联起来? 解决方案 http://bbs.csdn.net/topics/340030118

一个VB窗体鼠标拖动界面复制的问题

问题描述 一个VB窗体鼠标拖动界面复制的问题 一个VB窗体鼠标拖动界面复制的问题,用鼠标拖动文字从一个文字框到另一个,怎么复制其中的文字呢? 解决方案 http://blog.sina.com.cn/s/blog_5f9fdb0f0100gmlv.html