在好例子网,分享、交流、成长!
您当前所在位置:首页C# 开发实例C#语言基础 → C# 模拟鼠标键盘

C# 模拟鼠标键盘

C#语言基础

下载此实例
  • 开发语言:C#
  • 实例大小:0.05M
  • 下载次数:101
  • 浏览次数:1892
  • 发布时间:2016-09-15
  • 实例类别:C#语言基础
  • 发 布 人:icih
  • 文件格式:.zip
  • 所需积分:2
 相关标签: 模拟 键盘 鼠标 C#

实例介绍

【实例简介】

【实例截图】

【核心代码】

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
//Download by http://www.codefans.net
namespace SendKeys_Demo
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }
        //输入字母
        private void button1_Click(object sender, EventArgs e)
        {
            this.richTextBox1.Focus(); //首先获取文本的焦点
            for (int i = 65; i < 91; i  )
            {
                char ch = (char)i; //类型转换
                SendKeys.Send(ch.ToString()); //向活动应用程序发送击键
                System.Threading.Thread.Sleep(50);//当前线程挂起指定的时间
                SendKeys.Flush();//将信息从基础缓冲区移动到其目标,或消除缓冲区,或同时执行两种操作。    
            }
        }
        //输入数字
        private void button2_Click(object sender, EventArgs e)
        {
            this.richTextBox1.Focus(); //首先获取文本的焦点
            for (int i = 0; i < 10; i  )
            {
                SendKeys.Send(i.ToString()); //向活动应用程序发送击键
                System.Threading.Thread.Sleep(50);//当前线程挂起指定的时间
                SendKeys.Flush();//将信息从基础缓冲区移动到其目标,或消除缓冲区,或同时执行两种操作。  
            }
        }
        //输入汉字
        private void button3_Click(object sender, EventArgs e)
        {
            this.richTextBox1.Focus(); //首先获取文本的焦点
            System.Windows.Forms.SendKeys.Send("{LEFT}"   "李大嘴");
          
        }

        private void button4_Click(object sender, EventArgs e)
        {
            //启动notepad.exe 记事本程序,并在d:\下创建 或 打开 text_test.txt文件
            System.Diagnostics.Process txt = System.Diagnostics.Process.Start(@"notepad.exe", @"d:\text_test.txt");
            txt.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
            //等待一秒,以便目标程序notepad.exe输入状态就绪
            txt.WaitForInputIdle(1000);
            //如果目标程序 notepad.exe 没有停止响应,则继续
            if (txt.Responding)
            {
                //开始写入内容
                SendKeys.SendWait("-----下面的内容是外部程序自动写入-----\r\n");
                SendKeys.SendWait("刘晶,我爱你!!!");     //将文本框内的内容写入
                SendKeys.SendWait("{Enter}{Enter}");     //写入2个回车
                SendKeys.SendWait("文档创建时间:");
                SendKeys.SendWait("{F5}");          //发送F5按键
                SendKeys.SendWait("{Enter}");       //发送回车键
                SendKeys.SendWait("^s");       //发送 Ctrl   s 键
                SendKeys.SendWait("%{F4}");      // 发送 Alt   F4 键
                MessageBox.Show("文件已成功保存到C:\\text_test!");
            }
        }
    }
}
/*  用法
  1)为了指定单一键盘字符,必须按字符本身的键。例如,为了表示字母 A,可以用 "A" 作为 string。为了表示多个字符,就必须在字符后面直接加上另一个字符。例如,要表示 A、B 及 C,可用 "ABC" 作为 string。
  2)对 SendKeys 来说,加号  、插入符^ 、百分号% 、上划线~ 及圆括号( ) 都具有特殊意义。为了指定上述任何一个字符,要将它放在大括号{}当中。例如,要指定正号,可用 { } 表示。为了指定大括号字符,请使用 {{} 及 {}}。方括号 [ ] 对 SendKeys 来说并不具有特殊意义,但必须将它们放在大括号中。在其它应用程序中,方括号有特殊意义,在出现动态数据交换 (DDE) 的时候,它可能具有重要意义。
  3)为了在按下按键时指定那些不显示的字符,例如 ENTER 或 TAB 以及那些表示动作而非字符的按键,请使用下列代码:
  按键 代码 
  BACKSPACE {BACKSPACE}, {BS}或{BKSP} 
  BREAK {BREAK} 
  CAPS LOCK {CAPSLOCK} 
  DEL or DELETE {DELETE} 或 {DEL} 
  ENTER {ENTER}或 ~ 
  ESC {ESC} 
  NUM LOCK {NUMLOCK} 
  SCROLL LOCK {SCROLLLOCK} 
  UP ARROW {UP} 
  DOWN ARROW(下箭头) {DOWN} 
  LEFT ARROW {LEFT} 
  RIGHT ARROW {RIGHT} 
  END {END} 
  HOME {HOME} 
  INS or INSERT {INSERT} 或 {INS} 
  PAGE DOWN {PGDN} 
  PAGE UP {PGUP} 
  PRINT SCREEN {PRTSC} 
  WIN ^{ESC}
  TAB {TAB} 
  HELP {HELP} 
  F1 {F1} 
  F2 {F2} 
  F3 {F3} 
  F4 {F4} 
  F5 {F5} 
  F6 {F6} 
  F7 {F7} 
  F8 {F8} 
  F9 {F9} 
  F10 {F10} 
  F11 {F11} 
  F12 {F12} 
  4)为了指定那些与 SHIFT、CTRL 及 ALT 等按键结合的组合键,可在这些按键码的前面放置一个或多个代码,这些代码列举如下:
  键 代码
  SHIFT  
  CTRL ^
  ALT %
  5)为了说明在按下其它按键时应同时按下 SHIFT、CTRL、及 ALT 的任意组合键,请把那些按键的码放在括号当中。例如,为了说明按下 E 与 C 的时候同时按下 SHIFT 键,请使用 " (EC)"。为了说明在按下 E 的时候同时按下 SHIFT 键,但接着按 C 而不按 SHIFT,则使用 " EC"。
  6)为了指定重复键,使用 {key number} 的形式。必须在 key 与 number 之间放置一个空格。例如,{LEFT 42} 意指 42 次按下 LEFT ARROW 键;{h 10} 则是指 10 次按下 H 键。注意 不能用 SendKeys 将按键消息发送到这样一个应用程序——这个应用程序并没有被设计成在 Microsoft Windows 中运行。
  注意:Sendkeys 也无法将 PRINT SCREEN 按键发送到任何应用程序。*/

标签: 模拟 键盘 鼠标 C#

实例下载地址

C# 模拟鼠标键盘

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警