设计 任务书 文档 开题 答辩 说明书 格式 模板 外文 翻译 范文 资料 作品 文献 课程 实习 指导 调研 下载 网络教育 计算机 网站 网页 小程序 商城 购物 订餐 电影 安卓 Android Html Html5 SSM SSH Python 爬虫 大数据 管理系统 图书 校园网 考试 选题 网络安全 推荐系统 机械 模具 夹具 自动化 数控 车床 汽车 故障 诊断 电机 建模 机械手 去壳机 千斤顶 变速器 减速器 图纸 电气 变电站 电子 Stm32 单片机 物联网 监控 密码锁 Plc 组态 控制 智能 Matlab 土木 建筑 结构 框架 教学楼 住宅楼 造价 施工 办公楼 给水 排水 桥梁 刚构桥 水利 重力坝 水库 采矿 环境 化工 固废 工厂 视觉传达 室内设计 产品设计 电子商务 物流 盈利 案例 分析 评估 报告 营销 报销 会计
 首 页 机械毕业设计 电子电气毕业设计 计算机毕业设计 土木工程毕业设计 视觉传达毕业设计 理工论文 文科论文 毕设资料 帮助中心 设计流程 
垫片
您现在所在的位置:首页 >>理工论文 >> 文章内容
                 
垫片
   我们提供全套毕业设计和毕业论文服务,联系微信号:biyezuopin QQ:2922748026   
利用热键控制鼠标移动的一个程序
文章来源:www.biyezuopin.vip   发布者:毕业作品网站  


-
本程序可以使用热键来将鼠标移动到某一个指定的坐标。是一个定义热键的示例程序。

本程序的热键为小键盘的5,在编辑框内可以指定坐标

 

unit MainUnit;http://www.16sheji8.cn/

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Mask;

type
  TForm1 = class(TForm)
    btnSetHK: TButton;
    btnExit: TButton;
    GroupBox2: TGroupBox;
    Label3: TLabel;
    Label4: TLabel;
    btnUnsetHK: TButton;
    edYPos: TMaskEdit;
    edXPos: TMaskEdit;
    Memo: TMemo;
    procedure btnExitClick(Sender: TObject);
    procedure btnSetHKClick(Sender: TObject);
    procedure btnUnsetHKClick(Sender: TObject);
    procedure OnHotKey(var Message: TWMHOTKEY); message WM_HOTKEY;
    procedure FormDestroy(Sender: TObject);
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

const
  idHotKey : WORD = 0;

implementation

{$R *.DFM}

procedure TForm1.btnExitClick(Sender: TObject);
begin
 
  Close;
end;

procedure TForm1.btnSetHKClick(Sender: TObject);
begin
  if idHotKey<>0 then Exit;
  idHotKey := GlobalAddAtom('EmuMouse'); //给热键取得一个唯一的标识
  RegisterHotKey(Handle, idHotKey, 0, VK_NUMPAD5); //注册热键
end;

procedure TForm1.OnHotKey(var Message: TWMHOTKEY);
var
  Point: TPoint;
  X, Y: Word;
begin
  GetCursorPos(Point); //取回当前坐标

  tryhttp://www.16sheji8.cn/
    X := StrToInt(edXPos.Text);
    Y := StrToInt(edYPos.Text);
  except
    ShowMessage('坐标输入不正确.');
    Exit;
  end;

  try
    Mouse_Event(MOUSEEVENTF_ABSOLUTE+MOUSEEVENTF_LEFTDOWN, Point.X, Point.Y, 0, GetMessageExtraInfo);

    SetCursorPos(X, Y);

    Mouse_Event(MOUSEEVENTF_ABSOLUTE+MOUSEEVENTF_LEFTUP, X, Y, 0, GetMessageExtraInfo);

  except
    ShowMessage('Error');

  end;
end;

procedure TForm1.btnUnsetHKClick(Sender: TObject);
begin
  if idHotKey = 0 then Exit;
  UnRegisterHotKey(Handle, idHotKey); //注销热键
  DeleteAtom(idHotKey); //注销标识
  idHotKey := 0;
end;


procedure TForm1.FormDestroy(Sender: TObject);
begin
  btnUnsetHK.Click;
end;

end.


这是dfm文件

object Form1: TForm1
  Left = 296
  Top = 238
  AutoSize = True
  BorderStyle = bsDialog
  BorderWidth = 8
  Caption = '模拟鼠标拖动'
  ClientHeight = 265
  ClientWidth = 211
  Color = clBtnFace
  Font.Charset = GB2312_CHARSET
  Font.Color = clWindowText
  Font.Height = -12
  Font.Name = '新宋体'
  Font.Style = []
  OldCreateOrder = False
  OnDestroy = FormDestroy
  PixelsPerInch = 96http://www.16sheji8.cn/
  TextHeight = 12
  object btnSetHK: TButton
    Left = 136
    Top = 8
    Width = 75
    Height = 25
    Caption = '设置热键(&H)'
    TabOrder = 0
    OnClick = btnSetHKClick
  end
  object btnExit: TButton
    Left = 136
    Top = 72
    Width = 75
    Height = 25
    Caption = '退出(&X)'
    TabOrder = 2
    OnClick = btnExitClick
  end
  object GroupBox2: TGroupBox
    Left = 0
    Top = 0
    Width = 129
    Height = 97
    Caption = '目的坐标'
    TabOrder = 3
    object Label3: TLabel
      Left = 16
      Top = 29
      Width = 6
      Height = 12
      Caption = 'X'
    end
    object Label4: TLabel
      Left = 16
      Top = 61
      Width = 6
      Height = 12
      Caption = 'Y'
    end
    object edXPos: TMaskEdit
      Left = 32
      Top = 24
      Width = 73
      Height = 20
      EditMask = '0000;1;_'
      MaxLength = 4
      TabOrder = 0
      Text = '0000'
    end
    object edYPos: TMaskEdit
      Left = 32
      Top = 56
      Width = 73
      Height = 20
      EditMask = '0000;1;_'
      MaxLength = 4
      TabOrder = 1
      Text = '0000'
    end
  end
  object btnUnsetHK: TButton
    Left = 136
    Top = 40
    Width = 75
    Height = 25http://www.16sheji8.cn/
    Caption = '取消热键(&U)'
    TabOrder = 1
    OnClick = btnUnsetHKClick
  end
  object Memo: TMemo
    Left = 0
    Top = 104
    Width = 209
    Height = 161
    TabOrder = 4
  end
endhttp://www.16sheji8.cn/

 

  全套毕业设计论文现成成品资料请咨询微信号:biyezuopin QQ:2922748026     返回首页 如转载请注明来源于www.biyezuopin.vip  

                 

打印本页 | 关闭窗口
 上一篇文章:暂时没有
本类最新文章
储油罐的变位识别与罐容表标定 DVD租赁优化方案 车灯线光源的优化设计方案
基于时频分析与自适应滤波技术的多 基于WxJava框架的集客微信公 CRM系统的设计开发与Open
| 关于我们 | 友情链接 | 毕业设计招聘 |

Email:biyeshejiba@163.com 微信号:biyezuopin QQ:2922748026  
本站毕业设计毕业论文资料均属原创者所有,仅供学习交流之用,请勿转载并做其他非法用途.如有侵犯您的版权有损您的利益,请联系我们会立即改正或删除有关内容!