当前位置:文档之家› vc模拟键盘鼠标命令

vc模拟键盘鼠标命令

vc模拟键盘鼠标命令
vc模拟键盘鼠标命令

vc模拟鼠标键盘操作实用类

//****************** 类mk头文件mk.h **************************

#if !defined(AFX_MK_H__B024D48F_090A_4F6F_A199_32996DF699B3__INCLUDED_)

#define AFX_MK_H__B024D48F_090A_4F6F_A199_32996DF699B3__INCLUDED_

#if _MSC_VER > 1000

#pragma once

#endif // _MSC_VER > 1000

#include "winable.h"

class mk

{

public:

mk();

static void Key(BYTE k, int mSeconds=0);//按一个键,mSeconds表按键后到

//下一次操作延迟的时间:ms

static void Key2(BYTE k1, BYTE k2,int mSeconds=0);//按2个键

static void Key3(BYTE k1,BYTE k2,BYTE k3,int mSeconds=0);//按3个键

static void Click(int x,int y,int mSeconds=0);//单击

static void RClick(int x,int y,int mSeconds=0);//右击

static void DClick(int x,int y,int mSeconds=0);//双击

static void CtrlClick(int x, int y, int mSeconds=0);//Ctrl+单击

static void Drag(int x1,int y1,int x2,int y2,int mSeconds=0);//鼠标拖动virtual ~mk();

};

#endif

// !defined(AFX_MK_H__B024D48F_090A_4F6F_A199_32996DF699B3__INCLUDED_) //****************** 类mk头文件mk.h end**************************

//****************** 类mk实现文件mk.cpp **************************

#include "stdafx.h"

#include "mk.h"

#ifdef _DEBUG

#undef THIS_FILE

static char THIS_FILE[]=__FILE__;

#define new DEBUG_NEW

#endif

//////////////////////////////////////////////////////////////////////

// Construction/Destruction

//////////////////////////////////////////////////////////////////////

mk::mk()

{

}

mk::~mk()

{

}

void mk::Click(int x, int y, int mSeconds)

{

SetCursorPos(x,y);

mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);

mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);

Sleep(mSeconds);

}

void mk::DClick(int x, int y, int mSeconds)

{

SetCursorPos(x,y);

mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); Sleep(mSeconds);

}

void mk::Drag(int x1, int y1, int x2, int y2, int mSeconds) {

SetCursorPos(x1,y1);

mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); SetCursorPos(x2,y2);

mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); Sleep(mSeconds);

}

void mk::RClick(int x, int y, int mSeconds)

{

SetCursorPos(x,y);

mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0); Sleep(mSeconds);

}

void mk::Key(BYTE k, int mSeconds)

{

keybd_event(k,0,0,0);

keybd_event(k,0,KEYEVENTF_KEYUP,0);

Sleep(mSeconds);

}

void mk::Key2(BYTE k1, BYTE k2, int mSeconds)

{

//法1

//keybd_event(k1, 0, 0 ,0);

//keybd_event(k2, 0, 0 ,0);

//keybd_event(k2, 0, KEYEVENTF_KEYUP,0);

//keybd_event(k1, 0, KEYEVENTF_KEYUP,0);

//法2,更通用,但须先#include "winable.h"

INPUT input[4];

memset(input,0,sizeof(input));

input[0].type=input[1].type=input[2].type=input[3].type=INPUT_KEYBOARD;

input[0].ki.wVk=input[3].ki.wVk=k1;

input[1].ki.wVk=input[2].ki.wVk=k2;

input[2].ki.dwFlags = input[3].ki.dwFlags = KEYEVENTF_KEYUP;

SendInput(4, input, sizeof(INPUT));

Sleep(mSeconds);

}

void mk::CtrlClick(int x, int y, int mSeconds)

{

SetCursorPos(x,y);

keybd_event(VK_CONTROL ,0,0,0);

mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);

mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);

keybd_event(VK_CONTROL,0,KEYEVENTF_KEYUP,0);

Sleep(mSeconds);

}

void mk::Key3(BYTE k1, BYTE k2, BYTE k3, int mSeconds)

{

if(k1==VK_CONTROL&&k2==VK_MENU&&k3==VK_DELETE)

ShellExecute(NULL,NULL,"taskmgr.exe",NULL,NULL,SW_SHOW);

else

{

INPUT input[6];

memset(input,0,sizeof(input));

input[0].type=input[1].type=input[2].type=input[3].type=input[4].type=input[5].type=INPUT_KE YBOARD;

input[0].ki.wVk=input[5].ki.wVk=k1;

input[1].ki.wVk=input[4].ki.wVk=k2;

input[2].ki.wVk=input[3].ki.wVk=k3;

input[3].ki.dwFlags=input[4].ki.dwFlags=input[5].ki.dwFlags=KEYEVENTF_KEYUP;

SendInput(6, input, sizeof(INPUT));

}

Sleep(mSeconds);

}

//****************** 类mk实现文件mk.cpp end**************************

===================================================================

VC模拟键盘操作

INPUT input[4];

memset(input, 0, sizeof(input));

//设置模拟键盘输入

input[0].type = input[1].type = input[2].type = input[3].type = INPUT_KEYBOARD;

input[0].ki.wVk = input[2].ki.wVk = VK_CONTROL;

input[1].ki.wVk = input[3].ki.wVk = VK_ESCAPE;

// 释放按键

input[2].ki.dwFlags = input[3].ki.dwFlags = KEYEVENTF_KEYUP;

SendInput(4, input, sizeof(INPUT));

******************************************************************************* **

符号常量十六进制值指定的鼠标或键盘按键

VK_LBUTTON 01 鼠标左键

VK_RBUTTON 02 鼠标右键

VK_CANCEL 03 Control-break 过程

VK_MBUTTON 04 鼠标中键

VK_BACK 08 BACKSPACE 键

VK_TAB 09 TAB 键

VK_CLEAR 0C CLEAR 键

VK_RETURN 0D ENTER 键

VK_SHIFT 10 SHIFT 键

VK_CONTROL 11 CTRL 键

VK_MENU 12 ALT 键

VK_PAUSE 13 PAUSE 键

VK_CAPITAL 14 CAPS LOCK 键

VK_ESCAPE 1B ESC 键

VK_SPACE 20 SPACEBAR

VK_PRIOR 21 PAGE UP 键

VK_NEXT 22 PAGE DOWN 键

VK_END 23 END 键

VK_HOME 24 HOME 键

VK_LEFT 25 LEFT ARROW 键

VK_UP 26 UP ARROW 键

VK_RIGHT 27 RIGHT ARROW 键

VK_DOWN 28 DOWN ARROW 键

VK_SELECT 29 SELECT 键

VK_EXECUTE 2B EXECUTE 键

VK_SNAPSHOT 2C PRINT SCREEN键(用于Windows 3.0及以后版本)VK_INSERT 2D INS 键

VK_DELETE 2E DEL 键

VK_HELP 2F HELP 键

///////////////////////////////////////////////////

对于字母键和非小键盘上的数字键,直接在单引号中加入该键就行.

比如:a键:'A'

1键:'1'

//////////////////////////////////////////////

VK_LWIN 5B Left Windows 键(Microsoft自然键盘)

VK_RWIN 5C Right Windows 键(Microsoft自然键盘)

VK_APPS 5D Applications 键(Microsoft自然键盘)

VK_NUMPAD0 60 数字小键盘上的0 键

VK_NUMPAD1 61 数字小键盘上的 1 键

VK_NUMPAD2 62 数字小键盘上的 2 键

VK_NUMPAD3 63 数字小键盘上的 3 键

VK_NUMPAD4 64 数字小键盘上的 4 键

VK_NUMPAD5 65 数字小键盘上的5 键

VK_NUMPAD6 66 数字小键盘上的 6 键

VK_NUMPAD7 67 数字小键盘上的7 键

VK_NUMPAD8 68 数字小键盘上的8 键

VK_NUMPAD9 69 数字小键盘上的9 键

VK_MULTIPL Y 6A Multiply 键

VK_ADD 6B Add 键

VK_SEPARATOR 6C Separator 键

VK_SUBTRACT 6D Subtract 键

VK_DECIMAL 6E Decimal 键

VK_DIVIDE 6F Divide 键

VK_F1 70 F1 键

VK_F2 71 F2 键

VK_F3 72 F3 键

VK_F4 73 F4 键

VK_F5 74 F5 键

VK_F6 75 F6 键

VK_F7 76 F7 键

VK_F8 77 F8 键

VK_F9 78 F9 键

VK_F10 79 F10 键

VK_F11 7A F11 键

VK_F12 7B F12 键

VK_F13 7C F13 键

VK_F14 7D F14 键

VK_F15 7E F15 键

VK_F16 7F F16 键

VK_F17 80H F17 键

VK_F18 81H F18 键

VK_F19 82H F19 键

VK_F20 83H F20 键

VK_F21 84H F21 键

VK_F22 85H F22 键

VK_F23 86H F23 键

VK_F24 87H F24 键

VK_NUMLOCK 90 NUM LOCK 键

VK_SCROLL 91 SCROLL LOCK 键

VK_ATTN F6 Attn 键

VK_CRSEL F7 CrSel 键

VK_EXSEL F8 ExSel 键

VK_EREOF F9 Erase EOF 键

VK_PLAY FA Play 键

VK_ZOOM FB Zoom 键

VK_OEM_CLEAR FE Clear 键

举例:

(一)响应单独的按键:

先添加PreTranslateMessage()(响应WM_CHAR)也是同样的效果,因为本例只捕捉键盘) BOOL CMydilog::PreTranslateMessage(MSG* pMsg)

{

// TODO: Add your specialized code here and/or call the base class

if (pMsg->message == WM_KEYDOWN)

{

if(pMsg->wParam=='M')//直接用上面的虚码代替就可以响应所指键

MessageBox("hello");//如果按下M键弹出消息.比如想当按下小键盘1时

//弹出就用VK_NUMPAD1代替'M'

}

return CDialog::PreTranslateMessage(pMsg);

}

(二)组合键的用法:(本例响应Ctrl+X键)

BOOL CMydilog::PreTranslateMessage(MSG* pMsg)

{

// TODO: Add your specialized code here and/or call the base class

if (pMsg->message == WM_KEYDOWN)

{

switch (pMsg->wParam)

{

case VK_ESCAPE:

SetFocus ();

return TRUE;

case 'X':

if(::GetKeyState(VK_CONTROL) < 0)//如果是Shift+X这里就

//改成VK_SHIFT

MessageBox("hello");

return TRUE;

}

}

return CDialog::PreTranslateMessage(pMsg); }

空天飞行器的实时三维动画模拟

第23卷 第4期计 算 机 仿 真2006年4月 文章编号:1006-9348(2006)04-0033-04 空天飞行器的实时三维动画模拟 范小龙1,蒋志文2,张乖红3 (1.酒泉卫星发射中心,甘肃酒泉732750; 2.国防科技大学计算机学院,湖南长沙410073; 3.北京大学信息科学技术学院,北京100871) 摘要:为了使指挥员和专家在各项试验任务中能够全面清晰地从整体上掌握空天飞行器详细的飞行状态,体现空天飞行器 飞行状态的细微变化,有利于及时、迅速、准确地实施任务指挥决策,改变以往以单一曲线和文本显示处理加工任务信息的 传统指挥显示模式,给出了利用飞行试验实时数据进行驱动,生成三维动画实时模拟空天飞行器飞行实况的思想及其实现 框架,从而为指挥员和专家及时掌握飞行器飞行过程中的重要事件,进而为科学实施任务指挥决策提供直观翔实的飞行器 飞行综合信息奠定了应用基础,有效地弥补了现有航天发射场空天飞行器实时观测存在的不足。 关键词:飞行器;三维动画;实时;模拟 中图分类号:TP391 文献标识码:A R ea l T i m e Three-di m ensional Cartoon Si m ul ati on for A erospace V eh icle F AN X iao-long1,JI A N G Zh i-w en2,Z HANG Guai-hong3 (1.Ji uquan Sate llite L aunch Cen ter,Ji uquan G ans u732750,Ch i na; 2.Co ll ege o f Co m pute r,N ati onal U niversity of D efence T echno l ogy,Chang s ha H unan410073,Ch i na; 3.Co llege of Infor m a tion Sc i ence and T echno logy,P ek i ng U ni v ers it y,Be iji ng100871,Chi na) AB STRACT:W ith the deve l op m en t of aero space i ndustry,t he traditiona l comm and disp l ay pattern is too si m ple and the d i sp l ayed p ict ures a re not i ntu iti ona l at t he space l aunch site.T he aut hor syste m atica lly stud i es t he shortages of the rea l ti m e observa tion o f the aero space veh icle by usi ng a rea l ti m e three-di m ens i ona l cartoon si m ulati on,g ives an i dea and i m ple m entation fram e to bring to a usua lly successf u l conc l usi on.Th i s sy stem is driven by t he rea l ti m e data and is co m bined w ith the three-d i m ensi ona l cartoon si m u lati on,it can promptl y and v isuall y display t he pose chang i ng that t he veh i c le is do i ng i n a three-di m ensi onal space,w ith t he he l p of t he d isplay,the d i rectors and co m m ande rs cou l d reach a dec isi on promptl y and sc i entifi ca lly. K EY W ORDS:V ehic l e;Three-di m ensiona l cartoon;R ea l ti m e;S i m u l a ti on 1 引言 以前,航天发射场对于航天发射任务中的空天飞行器主要采用光电经纬仪、高速摄影仪、红外摄影仪等光学设备进行实时跟踪并将跟踪图像传送到指控中心为参试人员提供空天飞行器的飞行图像。由于受光学设备自身的一些限制,实时跟踪拍摄并传回的图像存在逐渐一点化、逐渐模糊化并且无法实现超视距跟踪拍摄等缺点,不能很好地对空天飞行器的外型轮廓变化和姿态调整状况进行清晰直观地再现。在空天飞行器出现异常(偏离、爆炸等)的情况下,参试人员很难借助跟踪图像进行更加深入和详细的分析,只能通过图像的回放进行一些定性的分析,最终还必须根据光测、遥测和雷测等设备的任务数据进行事后分析处理,而这一经过较长处理周期后得出的结论也不能直观地再现异常情况下空天飞行器的详细情况。利用三维动画模拟技术实时模拟空天飞行器飞行实况,通过直观的视觉效果为航天发射任务中的广大参试人员提供空天飞行器每时每刻的详细飞行情况,可以较好地弥补以前以光学设备为主进行图像观测存在的不足之处,在航天发射场有着良好的应用前景。 收稿日期:2004-11-23

adb shell中模拟键盘鼠标事件

Android自动化测试初探-5:再述模拟键盘鼠标事件(adb shell 实现) 2010-07-28 17:01 上一篇博文中讲述了通过Socket编程从外部向Emulator发送键盘鼠标模拟事件,貌似实现细节有点复杂。其实Android还有一种更简单的模拟键盘鼠标事件的方法,那就是通过使用adb shell 命令。 1. 发送键盘事件: 命令格式1:adb shell input keyevent “value” 其中value以及对应的key code如下表所列: KeyEvent Value KEYCODE Comment KEYCODE_UNKNOWN 1 KEYCODE_MENU 在SDK2.1的模拟器中命令失效,sendevent命令可行 2 KEYCODE_SOFT_RIGHT 3 KEYCODE_HOME 4 KEYCODE_BACK 5 KEYCODE_CALL 6 KEYCODE_ENDCALL

KEYCODE_0 8 KEYCODE_1 9 KEYCODE_2 10 KEYCODE_3 11 KEYCODE_4 12 KEYCODE_5 13 KEYCODE_6 14 KEYCODE_7 15 KEYCODE_8 16 KEYCODE_9 17 KEYCODE_STAR

KEYCODE_POUND 19 KEYCODE_DPAD_UP 20 KEYCODE_DPAD_DOWN 21 KEYCODE_DPAD_LEFT 22 KEYCODE_DPAD_RIGHT 23 KEYCODE_DPAD_CENTER 24 KEYCODE_VOLUME_UP 25 KEYCODE_VOLUME_DOWN 26 KEYCODE_POWER 27 KEYCODE_CAMERA 28 KEYCODE_CLEAR

道路交通事故三维动画模拟分析系统

道路交通事故三维动画模拟分析系统 一、产品简介 随着汽车工业的不断发展,我国汽车保有量持续攀升,随之而来的交通事故成了一大社会公害,2010年,全国共接报道路交通事故3906164起,同比2009年上升35.9%。其中,涉及人员伤亡的道路交通事故219521起,造成65225人死亡、254075人受伤,直接财产损失9.3亿。因此,对交通事故进行分析研究,可以获得交通事故的诱因和造成人员伤害的原因,进而采取措施减少交通事故的发生或事故造成的人员伤害。 道路交通事故三维动画模拟分析系统是由三维数字化图形仿真软件和 360°全自动机器人拍摄系统组成。是北京金视和科技有限公司集十几年来图形图像和三维仿真领域的尖端科研成果,并结合多年来对公安交通系统的调研数据进行定制化开发的解决方案。 北京金视和科技有限公司聘请多位交通事故鉴定技术专家作为技术顾问团队,通过全国各地交通事故科技部门对交通事故模拟复原分析系统多年的使用意见和反馈信息,不断将产品完善改进至今。适用于交通事故现场勘查、现场痕迹物证提取和保存、现场图像绘制以及事故过程分析等环节的规范操作,满足了公安交通系统对于事故现场绘图、事故现场三维重建和交通事故过程模拟分析等标准化工作流程的需求。 二、产品特点 1、事故现场真实360°全景三维现场重建 道路交通事故三维动画模拟分析系统搭载的全景拍摄系统,由单反数码相机、精密鱼眼镜头和全自动拍摄云台组成,可在一分钟内拍摄事故现场的全景图片,并自动生成现场全景图像,达到现场三维重建的目的。 事故现场往往一旦撤销便无法还原,360°全自动机器人拍摄系统将现场完整的保存下来,所有现场痕迹和物证细节图像再以热点链接的方式添加到现场图中,可随时对事故现场图进行回溯、测量和分析。 2、快速绘制自定义三维交通现场图像 道路交通事故三维动画模拟分析系统内建强大的快速建模功能,根据不同的现场公路环境需求(市区公路、高速公路、城铁和火车轨道等),可在几分钟内创建交通事故现场的三维布局,从而进行事故现场的还原和分析。该功能颠覆了事故现场传统手绘图或者平面绘图的方式,可直接创建三维事故现场图像,并按照公安部制图标准,快速生成现场三维记录图、现场比例图和现场三维分析图,真实的还原事故现场三维布局。 3、丰富的交通事故三维模型资源库 道路交通事故三维动画模拟分析系统通过多年来对国内交通事故市场调研数据的积累,以及虚拟现实和三维仿真领域的技术经验,建立了一个庞大的专业模型资源库,其中包括交通事故中涉及到的几乎所有物品和国内所有类型的公路模型,可以满足交通事故现场还原的需求。

VC 模拟鼠标和键盘输入

VC 模拟鼠标和键盘输入 - 天下 - 博客频道 - https://www.doczj.com/doc/da13884226.html, 模拟鼠标点击: 1、这里是鼠标左键按下和松开两个事件的组合即一次单击: mouse_event (MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 ) 2、模拟鼠标右键单击事件: mouse_event (MOUSEEVENTF_RIGHTDOWN | MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0 ) 3、两次连续的鼠标左键单击事件构成一次鼠标双击事件: mouse_event (MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 ) mouse_event (MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 ) 4、使用绝对坐标 MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE, 500, 500, 0, 0 需要说明的是,如果没有使用MOUSEEVENTF_ABSOLUTE,函数默认的是相对于鼠标当前位置的点,如果dx,和dy,用0,0表示,这函数认为是当前鼠标所在的点--直接设定绝对坐标并单击 mouse_event(MOUSEEVENTF_LEFTDOWN, X * 65536 / 1024, Y * 65536 / 768, 0, 0); mouse_event(MOUSEEVENTF_LEFTUP, X * 65536 / 1024, Y * 65536 / 768, 0, 0); 其中X,Y分别是你要点击的点的横坐标和纵坐标 模拟键盘输入: [cpp] void EnterString(const char* text) { bool bShift = false; size_t length = strlen(text); for(size_t index = 0;index < length;index++) { int val = text[index]; if(val >= 97 && val <= 122) //小写a-z { val -= 32; bShift = false; } else if(val >= 65 && val <= 90) //大写A-Z { bShift = true;

三维机械仿真动画

三维机械仿真动画 三维机械仿真动画是动画产业的一项新领域,它是把三维动画与传统机械结合而成,采用三维动画技术模拟机械的外形、材质、零部件和内部构造,把机械的设计原理、工作过程、性能特征、使用方式等一系列真实的事物以动态视频的形式演示出来。模具的工作原理、工程机械的生产过程、机器的拆分组装、流水线设备的运作流程、系统型设备的运转方式、产品的使用方法等所有工业机械产品的运转类型都可通过演示动画的形式展现出来。 在展会现场,同类产品信息混杂难以凸显竞争优势。那么,商家利用三维机械仿真动画这种动画和实物相结合的方式来展示自己的产品,无疑会在同行业竞争中占领优势,将客户的眼球吸引过来。产品在销售过程中,离不开销售人员的讲解,不过再好的产品只靠语言来表达也不能让一位理智的客户将腰包打开,如果通过三维机械仿真动画的形式将产品清晰、直观的展示给客户,再配以销售人员的耐心讲解,让客户深入的了解产品,商家要提高产品的销售几率将不是问题。在客户购买产品时,送给客户一份该产品运转的演示动画。如若产品出现小问题,客户通过演示动画便可自己解决,即可以减少因产品停用照成的客户的损失,也可降低销售方售后的人力成本,一举多得。工业产品都是创新成果,要申请专利和国家的奖项,需要详细的申报资料,而工业仿

真动画能够非常直观、清晰的将产品的特点展现出来,让审核者很快的了解产品的详情,从而加快申报的进度。 三维机械仿真动画以新颖的视频形式,将产品的优势全方位的介绍给客户,使客户对产品记忆深刻。其以轻便的视频文件格式携带,使得销售人员可以随时随地为客户展示产品。制作三维仿真动画时,技术人员只需参照设计方案即可将产品各项功能的特性逼真直观地制作成动画形式,并能随时做出灵活修改,从而节省实物样品制造和修改的巨大成本。在产品售后阶段,三维机械仿真动画既可指导实际生产,也可作为客户使用产品时的操作指南。 随着时代的发展,企业将产品制作成三维机械仿真动画来进行宣传,已经成为企业销售产品的一个明智的策略。 Sunny

JAVA模拟键盘鼠标操作

//可以在eclipse下直接运行的示例程序: package key_robot; import java.awt.*; import java.awt.event.*; import javax.swing.JOptionPane; public class key_robot { public key_robot() { } // 鼠标单击,要双击就连续调用 private static void pressMouse(Robot r, int m, int delay) { r.mousePress(m); r.delay(10); r.mouseRelease(m); r.delay(delay); } // 键盘输入方法 private static void pressKeys(Robot r, int[] ks, int delay) { for (int i = 0; i < ks.length; i++) { r.keyPress(ks[i]); r.delay(10); r.keyRelease(ks[i]); r.delay(delay); } } public static void main(String[] args) throws Exception { final Robot rb = new Robot(); new Thread() { public void run() { rb.delay(2000); // 模拟回车 rb.keyPress(KeyEvent.VK_ENTER); rb.keyRelease(KeyEvent.VK_ENTER); } }.start();

二维动画和三维动画的区别

二维动画: 二维画面是平面上的画面。纸张、照片或计算机屏幕显示,无论画面的立体感有多强,终究只是在二维空间上模拟真实的三维空间效果。传统的二维动画是由水彩颜料画到赛璐璐片上,再由摄影机逐张拍摄记录而连贯起来的画面,计算机时代的来临,让二维动画得以升华,可将事先手工制作的原动画逐帧输入计算机,由计算机帮助完成绘线上色的工作,并且由计算机控制完成纪录工作。也就是说,二维动画是简单的拍摄实景图片经过处理连贯起来的一种宣传片没有太多的动态展示。如若楼盘没有实景既表现不出楼盘中水的动态、楼盘四周建好的景观效果、只是简单的表面阐释。 三维动画: 又称3D动画,是近年来随着计算机软硬件技术的发展而产生的一新兴技术。是近年来随着计算机软硬件技术的发展而产生的一新兴技术。三维动画软件在计算机中首先建立一个虚拟的世界,设计师在这个虚拟的三维世界中按照要表现的对象的形状尺寸建立模型以及场景,再根据要求设定模型的运动轨迹、虚拟摄影机的运动和其它动画参数,最后按要求为模型赋上特定的材质,并打上灯光。当这一切完成后就可以让计算机自动运算,生成最后的画面。计算机在影视领域的延伸和制作软件的增加,三维数字影像技术扩展了影视拍摄的局限性,在视觉效果上弥补了拍摄的不足,在一定程度上电脑制作的费用远比实拍所产生的费用要低的多,

同时为剧组因预算费用、外景地天气、季节变化而节省时间。制作影视特效动画的计算机设备硬件均为3D数字工作站。 二维与三维动画的区别:主要在采用不同的方法获得动画中的景物运动效果。而三维画面,画中景物有正面,也侧面和反面,调整三维空间的视点,能够看到不同的内容。 二维图:

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

本文将总结Selenium WebDriver 中的一些鼠标和键盘事件的使用,以及组合键的使用,并且将介绍WebDriver 中没有实现的键盘事件(Keys 枚举中没有列举的按键)的扩展。举例说明扩展Alt+PrtSc 组合键来截取当前活动窗口并将剪切板图像保存到文件。 在使用Selenium WebDriver 做自动化测试的时候,会经常模拟鼠标和键盘的一些行为。比如使用鼠标单击、双击、右击、拖拽等动作;或者键盘输入、快捷键使用、组合键使用等模拟键盘的操作。在WebDeriver 中,有一个专门的类来负责实现这些测试场景,那就是Actions 类,在使用该类的过程中会配合使用到Keys 枚举以及Mouse、Keyboard、CompositeAction 等类。 其次,在实际测试过程中,可能会遇到某些按键没办法使用Actions、Keys 等类来实现的情况。比如通过使用Alt+PrtSc 组合键来实现截取屏幕当前活动窗口的图像,在Keys 枚举中,因为没有枚举出PrtSc 键,所以没办法通过Action 的KeyDown(Keys) 来模拟按下这个动作。 再次是在自动化测试中,可能会遇到一些附件、文件上传的场景,或者是多文件上传,这些在Selenium2.0 之后,可以直接使用WebElement 类的sendKeys() 方法来实现。 下面就分别介绍这些情况的具体使用。 鼠标点击操作 鼠标点击事件有以下几种类型: 清单1. 鼠标左键点击 Actions action = new Actions(driver);action.click();// 鼠标左键在当前停留的位置做单击操作 action.click(driver.findElement(https://www.doczj.com/doc/da13884226.html,(element)))// 鼠标左键点击指定的元素 清单2. 鼠标右键点击 Actions action = new Actions(driver); action.contextClick();// 鼠标右键在当前停留的位置做单击操作 action.contextClick(driver.findElement(https://www.doczj.com/doc/da13884226.html,(element)))// 鼠标右键点击指定的元素 清单3. 鼠标双击操作 Actions action = new Actions(driver); action.doubleClick();// 鼠标在当前停留的位置做双击操作

三维动画三维动画考试卷模拟考试题.docx

《三维动画》 考试时间:120分钟 考试总分:100分 遵守考场纪律,维护知识尊严,杜绝违纪行为,确保考试结果公正。 1、下列材质属性中,用来调制材质自发光效果的选项是()。( ) A.Environment B.Transparency C.Bump Mapping D.Incandescence 2、在Polygons 模块中,下面()菜单可以直接翻转多边形的法线。( ) A.Average Normal B.Set Vertex Normal C.SoftHarden D.Reverse 3、MAYA 的PaintEffects (画笔特效)工具不能实现下列()效果。( ) A.绘制动态火焰 B.绘制动态草丛 C.绘制动态表情 D.绘制动态树 4、使用粒子工具Particle Tool 在网格平面上创建一个网格状分布的栅格粒子particle1,然后通过执行Ctrl+D 复制一个粒子particle2,选择两个粒子,添加重力场Gravity ,结果particle1下落,而particle2没有下落,原因是()。( ) 姓名:________________ 班级:________________ 学号:________________ --------------------密----------------------------------封 ----------------------------------------------线---------------------- ---

A.重力场强度太小 B.同时选择两个粒子添加场只能有效地添加给一个粒子,另外一个不受影响 C.重力场方向对于particle2粒子来说不是向下的 D.复制出来的粒子particle2不能认识到时间的变化,所以不会下落 5、下列关于骨骼的描述正确的是()。() A.从一个父物体骨骼上分叉伸出的多个子物体,在选择时会被作为一个物体选中 B.骨骼能被渲染出来 C.骨骼的局部坐标不可以修改 D.对于骨骼物体不能应用点约束 6、下列对于nCloth布料的动态质感说法错误的是()。() A.增加布料的精度可以让布料看起来更软 B.提高布料形状节点里的friction摩擦力属性可以让布料显得粗糙 C.提高布料形状节点里的Stretch Resistance抗拉伸属性可以让布料更容易变形拉伸 D.提高布料形状节点里的Rigidity刚体化属性可以让布料更接近刚体 7、下列关于Layered Shader的描述中,正确的是()。() A.层材质之间不可作叠加处理 B.Transparency属性控制当前选择层的透明度 C.层之间位置不可互换 D.Anisotropic材质不可用于层材质 8、在Maya中,通过许多方式显示多边形的各种元素和数目等,为我们在建模过程中提供许多方便。例如,Display>Polygon Display提供更多的多边形显示选项,下面可能成为选项的是()。() A.网格显示模式 B.实体显示模式 C.实体和材质显示模式 D.以上全部

模拟键盘鼠标事件

android中的MotionEvent 及其它事件处理 2014-09-18 08:47 7386人阅读评论(0) 收藏举报 MotionEvent对象 当用户触摸屏幕时将创建一个MotionEvent对象。MotionEvent包含关于发生触摸的位置和时间等细节信息。MotionEvent对象被传递到程序中合适的方法比如View对象的onTouchEvent()方法中。在这些方法中我们可以分析MotionEvent对象那个,以决定要执行的操作。 MotionEvent对象是与用户触摸相关的时间序列,该序列从用户首次触摸屏幕开始,经历手指在屏幕表面的任何移动,直到手指离开屏幕时结束。手指的初次触摸(ACTION_DOWN 操作),滑动(ACTION_MOVE操作)和抬起(ACTION_UP)都会创建MotionEvent对象。所以每次触摸时候这三个操作是肯定发生的,而在移动过程中会产生大量事件,每个事件都会产生对应的MotionEvent对象记录发生的操作,触摸的位置,使用的多大压力,触摸的面积,合适发生,以及最初的ACTION_DOWN和时发生等相关的信息。 在设置事件时我们有2种设置的方式,一种是委托式一种是回调式。第一种就是将事件的处理委托给监听器处理,你可以定义一个View.OnTouchListener接口的子类作为监听器,其中有onTouch()方法。而第二种是重写View类自己本身的onTouchEvent方法,也就是控件自己处理事件。onTouch方法接收一个MotionEvent参数和一个View参数,而onTouchEvent方法仅接收MotionEvent参数。这是因为监听器可以监听多个View 控件的事件。通过MotionEvent方法getation可以得到该Motionevent具体是哪个操作如ACTION_DOWN。 1、MotionEvent中getAction()与getActionMasked()的区别 如果我们在监听Ontouch()里面测试的时候会发现,这两个返回值竟然是一样的。查询API 我们发现ACTION_MASK说明是:Constant Value: 255 (0x000000ff)。也就是哦0Xff. public final intgetAction () Return the kind of action being performed. Consider using getActionMasked() and getActionIndex() to retrieve the separate masked action and pointer index. 翻译意思大概是返回action的类型,考虑使用getActionMasked()和getActionIndex()来获得单独的经过掩码的action和触控点的索引. public final intgetActionMasked () Return the masked action being performed, without pointer index information. Use getActionIndex() to return the index associated with pointer actions.

USB模拟鼠标与键盘使用说明

第一章使用说明 1.1 功能简介 本例程是用实验板来模拟鼠标或键盘,即将相关程序下载到单片机,并将学习板与电脑通过U口连接后,本学习板可以当作U口的鼠标或者键盘来用。 其中能够模拟实现的鼠标功能为:鼠标左移、右移、上移、下移,鼠标左键按下和右键按下。 能够模拟实现的键盘功能为:数字1和2的键入、SHIFT和ALT功能键的键入、大小写切换和小键盘数字键功能的键入。 本例程共用到学习板上的六个按键,位于矩阵键盘左上角的S6、S7、S10、S11、S14和S15。 1.2鼠标的信息说明 将UsbMouse.hex文件下载到单片机中,且之后保证USB1口(位于学习板左上方)与电脑的U口处于连接状态(USB1口即为TX-1C开发板的U口)。 稍等片刻,便会先后在电脑屏幕的右下角出现下面两个提示(此提示只在第一次安装时出现): 图1.1 系统发现新硬件提示 图1.2安装成功提示 右键单击“我的电脑”,选中“管理”项,点击并进入,在其左侧的项目栏里点击“设备管理器”,便会发现其中多了如下一个设备,也就是我们的TX-1C开发板所模拟的鼠标,如图1.3所示。

图1.3 设备描述显示 双击“USB人体学输入设备”,会弹出如图1.4和图1.5的属性描述 图1.4 属性描述---常规选项卡

图1.5 属性描述---详细信息选项卡 1.3 鼠标的使用说明 在使用USB模拟鼠标与键盘功能之前,请确保将芯片PDIUSBD12左侧的两根插针用跳帽连接起来(这两根跳帽是用于芯片PDIUSBD12向单片机发出中断的连接线)!!! 总共使用到的矩阵键盘中的六个按键的功能分别如表1.1所示 据此, 面上实验一下,体会自制鼠标的乐趣。 1.4 键盘的相关说明 将文件夹“键盘实例”中的UsbKeyboard.hex文件下载到单片机中,并通过USB 线将TX-1C学习板与电脑U口连接后,同样会出现如图1.1.、图1.2类似的安装信息(也是在第一次安装时提示,以后都不再提示,除非更改程序中的相关设备描述信息,让电脑以为是一个以前从未连接过的设备连接了。)同样的打开设备管理器,也可以找到如图1.3、图1.4、图1.5类似的信息。在此就不再赘述了。下面列出相关按键的功能,如表1.2所示。

ACAA三维动画师模拟题

问题: 奥运场馆的三维动画是哪个公司做的: 答案1: 水晶石 答案2: 完美动力 答案3: 中影华龙 答案4: 火星时代 正确答案: 1 问题: 相对于实拍广告,三维动画广告有如下缺点: 答案1: 制作周期相对较长 答案2: 三维动画广告的制作成本,与制作的复杂程度和所要求的真实程度成正比,并呈指数增长 答案3: 三维动画制作是一件艺术和技术紧密结合的 答案4: 没有缺点 正确答案: 1,2,3 问题: 三维动画应用的领域 答案1: 广告 答案2: 电视电影 答案3: 游戏 答案4: 医疗 正确答案: 1,2,3,4 问题: 以下是三维动画软件的是: 答案1: maya 答案2: 3d max 答案3: XSI 答案4: PS 正确答案: 1,2 问题: 哪个动画软件获得过奥斯卡奖: 答案1: maya 答案2: 3d max 答案3: SXI 答案4: Lightwave 正确答案: 1 问题: 相对于实拍广告,三维动画广告有如下优点 答案1: 能够完成实拍不能完成的镜头; 答案2: 可修改性较强,质量要求更易受到控制; 答案3: 实拍有危险性的镜头可通过三维动画完成; 答案4: 能够对所表现的产品起到美化作用; 正确答案: 1,2,3,4 问题: 三维动画的定义正确的是

答案1: 三维动画又称3D动画 答案2: 是近年来随着计算机软硬件技术的发展而产生的一新兴技术 答案3: 三维动画软件在计算机中首先建立一个虚拟的世界,设计师在这个虚拟的三维世界中按照要表现的对象的形状尺寸建立模型以及场景,再根据要求设定模型的运动轨迹、虚拟摄影机的运动和其它动画参数, 最后按要求为模型赋上特定的材质,并打上灯光。当这一切完成后就可以让计算机自动运算,生成最后的画面。 答案4: 和二维动画一样 正确答案: 1,2,3 问题: 以下哪部动画是皮克斯制作的: 答案1: 料理鼠王 答案2: 海底总动员 答案3: 绿巨人 答案4: 汽车总动员 正确答案: 1,2,4 问题: 相对于实拍广告,三维动画广告有如下特点 答案1: 能够完成实拍不能完成的镜头; 答案2: 制作不受天气季节等因素影响; 答案3: 对制作人员的技术要求较高; 答案4: 可修改性较强,质量要求更易受到控制; 实拍成本过高的镜头可通过三维动画实现以降低成本; 正确答案: 1,2,3,4 问题: 以下哪部三维动画是用3D MAX制作的: 答案1: 料理鼠王 答案2: 海底总动员 答案3: 绿巨人 答案4: 汽车总动员 正确答案: 3 问题: 如图所示,将左图中选区存储为右图的通道,请问下列哪些说法是正确的? 试题图片: 答案1: 执行“选择>存储选区”命令,在弹出的存储选区对话框中创建新通道,并命名为“queen” 答案2: 执行“选择>存储选区”命令,在弹出的存储选区对话框中创建新文档,并命名为“queen”

硬件模拟键盘鼠标,键鼠控制器KMC3

硬件模拟键盘鼠标(键鼠控制器KMC3) 1 概述 键鼠控制器KMC3,是一款通过RS232接口控制,输出标准键盘鼠标信号的设备,即可通过计算机的com口来控制它完成进行模拟硬件键盘鼠标的操作。主要应用场合为:彩票速打、游戏辅助、计算机自动控制、远程控制、多机同步操作等。 2 产品特点 速度快:键盘鼠标信号的模拟,每秒可达100个以上,只要串口能够将指令发送出来,它就能够将指令转换为键盘或者鼠标信号发送出去, 性能稳定:所有元器件均选用工业级器件,可保证长期稳定运行,决无误码与丢码现象。 兼容性好:输入端为标准RS232接口,可直接与计算机的com口连接;输出端为PS2接口,可直接连计算机的PS2键盘、鼠标接口,亦可通过转接线 转为usb接口。 控制简单:串口控制,指令协议简单,发送指令无需考虑时间间隔,连续发送即可;无需握手信号验证,只要串口能发送出去,就能保证转换成功。 与手工操作键盘鼠标完全相同:该设备完全模拟手工操作键盘鼠标的特点,通过com口控制指令转发出来的键盘鼠标信号与普通手工操作键盘鼠标没 有任何区别。 3 工作原理 键鼠控制器KMC3内嵌单片机,通过单片机完成RS232串口信号到键盘鼠标信号的转换过程;控制指令部分,键盘的指令根据手工操作特性,分为键盘的通码、断码两种,鼠标的指令部分根据手工操作鼠标的特点分为按键、移动等几个指令了;输出的键盘鼠标信号部分,是单片机软件模拟的符合PS2协议的信号,实际输出到计算机之后,其效果与硬件键盘、鼠标效果完全相同,同时该设备能够模拟键盘鼠标对计算机发出的各种控制指令进行响应;如果直接将设备连接到计算机的ps2接口,则计算机会默认该设备为普通的键盘鼠标设备,而无需

VC模拟鼠标键盘输入

vc模拟键盘输入 keybd_event(VK_LWIN, 0, 0 ,0); keybd_event('M', 0, 0 ,0); keybd_event('M', 0, KEYEVENTF_KEYUP ,0); keybd_event(VK_LWIN, 0, KEYEVENTF_KEYUP,0); 方法1: HWND hwnd=::FindWindow(0, "文档1"); //假设你要找的窗口标题为“文档1”CWnd::FromHandle(hwnd)->SetForegroundWindow(); ::PostMessage(hwnd, WM_KEYDOWN, VK_ESCAPE, 0L); //发送ESC按下的键盘消息 方法2:这里以向记事本程序发送Ctrl+s按键消息为例: CWnd *pWnd = FindWindow("Notepad", NULL); if (pWnd->GetSafeHwnd()) { pWnd->ShowWindow(SW_NORMAL); pWnd->SetForegroundWindow(); keybd_event(VK_CONTROL, 0, 0, 0); keybd_event('S', 0, 0, 0); keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0); keybd_event('S', 0, KEYEVENTF_KEYUP, 0); } 对于其他程序,关键就是要找到就收消息的窗口句柄。 ::mouse_event(1) 模拟鼠标动作API函数mouse_event,它可以实现模拟鼠标按下和放开等动作。 VOID mouse_event( DWORD dwFlags, // 鼠标动作标识。 DWORD dx, // 鼠标水平方向位置。 DWORD dy, // 鼠标垂直方向位置。 DWORD dwData, // 鼠标轮子转动的数量。 DWORD dwExtraInfo // 一个关联鼠标动作辅加信息。 ); 其中,dwFlags表示了各种各样的鼠标动作和点击活动,它的常用取值如下:MOUSEEVENTF_MOVE 表示模拟鼠标移动事件; MOUSEEVENTF_LEFTDOWN 表示模拟按下鼠标左键; MOUSEEVENTF_LEFTUP 表示模拟放开鼠标左键; MOUSEEVENTF_RIGHTDOWN 表示模拟按下鼠标右键; MOUSEEVENTF_RIGHTUP 表示模拟放开鼠标右键; MOUSEEVENTF_MIDDLEDOWN 表示模拟按下鼠标中键;

三维动画设计与制作课程复习考试试题及答案A

《三维动画设计与制作》复习纲要A 一、单项选择题 1.Maya软件的主要功能是()。 A、创建三维模型,输出图像和视频动画 B、编写复杂程序 C、服务器操作系统 D、查杀病毒 2.Maya可以指定图片中的alpha通道信息,其中黑色代表()。 A、图像的不透明区域 B、图像的透明区域 C、图像的半透明区域 D、图像的黑色区域 3.Maya中File(文件)菜单中“New Scene”命令的含义是()。 A、建立新项目 B、制定一个项目 C、建立新场景 D、导出所有 4.把两个场景文件合并到一起需要借助()。 A、New Scene命令 B、Save Scene As命令 C、Undo命令 D、Import命令 5.如果选择了一条曲线上的一个Curve Point,并想使此条曲线在此处断开,应该使用Edit Curves菜单中的()命令。 A、Detach Curves B、Open/Close Curves C、Cut Curve D、Intersect Curves 6.Maya中分层渲染的方法有物体分层和()。 A、图层分层 B、颜色分层 C、场景分层 D、通道分成 7.建模是将实物的外形以及内部制作成()。 A、玻璃模型 B、木制模型 C、石膏模型 D、以上都不对 8.Maya中设置渲染的模块是()。 A、Cloth B、Rendering C、Dynamics D、Live 9.按住键盘上的Alt键,然后按住鼠标左键进行移动,则会()。 A、旋转视图 B、移动视图 C、缩放视图 D、无变化 10.以下()技术不是用来增强动画角色制作的。 A、Alias MotionBuilder技术 B、变形器 C、剥皮工具 D、MayaFur 二、多项选择题 1.以下不是Maya专属语言的有()。 A、C++ B、JSP C、MEL D、.net 2.在Maya中有多种捕捉方式,其中包括()。 A、栅格捕捉 B、边线捕捉 C、名称捕捉 D、曲面捕捉 第 1 页共3 页

第三章常见的鼠标键盘交互方法

TrackBall模式 Trackball模式是跟踪球模式,具体来说,就是物体的中心位置不变,而改变视点的位置,从而使模型随着鼠标的移动绕着中心位置旋转。 对于鼠标移动需要计算相应的视点(照相机)的运动情况,在osg中,通过TrackballManipulator::calcMovement()来实现,并且对于不同的鼠标事件,分别进行如下的操作: 1.按下鼠标的左键,则旋转照相机。 2.按下鼠标中间键或者同时按下鼠标的左键和与右键,则改变物体的中心位置,也即对物体进行平移操作。 3.按下鼠标的右键,则对模型进行缩放。 在按下鼠标的左键从而旋转照相机时,这里主要模拟了一个跟踪球技术,球的半径理想情况下应该基于旋转中心到鼠标所指的物体上某点的距离,但是为了简化处理,一般情况下,球的半径TRACKBALLSIZE可以预先给定,也能达到比较好的模拟效果。具体实现过程如下:首先分别记录两次鼠标事件的坐标的(x1,y1)和(x2,y2),根据x坐标的最小值X min和最大值X max,以及y坐标的最小值Y min和最大值Y max,对(x1,y1)和(x2,y2)坐标进行规范化,转化到(-1,1)之间,不妨假设新的坐标点为p1和p2,然后通过将p1和p2投影到跟踪球上,从而获取相应的z 坐标。这样,以球的中心为起始点,计算出的球上的两个点为终点,可以确定两个向量,不妨记作P1和P2,那么旋转轴axis = P2^ P1,旋转的弧度为:t = ||(P2- P1)|| / (2.0*TRACKBALLSIZE),为了避免产生某些不可操纵的结果,必须先将t规范到(-1,1)之间,再将其转化为角度angles,然后将照相机绕着axis旋转angles的角度,从而实现了对照相机的旋转操作。 在osg的实现中,该跟踪球并不是一个正规的球体,而是进行了一定的变形,在中心附近是一个半径为TRACKBALLSIZE的球体,而在离中心达到一定距离时(小于球的半径TRACKBALLSIZE),该球体被扭曲成了四个双曲面。 在Trackball模式的具体实现时,有许多细节问题,如 1.首先需要将世界坐标系转化到视点坐标系,这可以通过先将中心平移到视点后根据照相机的up、物体的中心以及视点重新确立坐标系。在osg中,由void TrackballManipulator::computePosition(const osg::Vec3& eye,const osg::Vec3& center,const osg::Vec3& up)实现。 2.模型的旋转通过鼠标控制,因此需要判断鼠标是否移动,具体实现时,可以预先自定义一个速率v,分别记录下连续两次鼠标事件的时间和位置,计算出间隔的时间?t和移动的距离?s,如果?s > v * ?t,就可以认为鼠标移动,并根据鼠标的具体事件(如按下的是左键、右键等)进行相应的操作。在osg中,由bool TrackballManipulator::isMouseMoving()实现。 3.需要有一个函数接收不同的鼠标和键盘事件,从而做出相应的处理。在osg中,由bool TrackballManipulator::handle(const GUIEventAdapter& ea,GUIActionAdapter& us)实现,如果事件被正确处理,返回true,否则返回false。其中GUIEventAdapter接受来自GUI的更新事件,GUIActionAdapter则是对这些GUI事件的回应。 Quaternion The quaternions are members of a noncommutative division algebra first invented by William Rowan Hamilton. The idea for quaternions occurred to him while he was walking along the Royal

C#模拟键盘鼠标事件-SendKeys

C#模拟键盘鼠标事件-SendKeys 2007-09-18 15:13 7689人阅读评论(1) 收藏举报1.模拟键盘事件 System.Windows.Forms.SendKeys 以下是SendKeys 的一些特殊键代码表。 键代码 BACKSPACE {BACKSPACE}、{BS} 或{BKSP} BREAK {BREAK} CAPS LOCK {CAPSLOCK} DEL 或DELETE {DELETE} 或{DEL} DOWN ARROW(下箭头键){DOWN} END {END} ENTER {ENTER} 或~ ESC {ESC} HELP {HELP} HOME {HOME} INS 或INSERT {INSERT} 或{INS} LEFT ARROW(左箭头键){LEFT} NUM LOCK {NUMLOCK} PAGE DOWN {PGDN} PAGE UP {PGUP} PRINT SCREEN {PRTSC}(保留,以备将来使用) RIGHT ARROW(右箭头键){RIGHT} SCROLL LOCK {SCROLLLOCK} TAB {TAB} UP ARROW(上箭头键){UP} F1 {F1} F2 {F2} F3 {F3} F4 {F4} F5 {F5} F6 {F6} F7 {F7} F8 {F8} F9 {F9}

F10 {F10} F11 {F11} F12 {F12} F13 {F13} F14 {F14} F15 {F15} F16 {F16} 数字键盘加号{ADD} 数字键盘减号{SUBTRACT} 数字键盘乘号{MULTIPLY} 数字键盘除号{DIVIDE} 若要指定与SHIFT、CTRL 和ALT 键的任意组合一起使用的键,请在这些键代码之前加上以下一个或多个代码: 键代码 SHIFT + (SHIFT="+") CTRL ^ (CTRL="^") 如果输入 ALT % private void button1_Click(object sender, System.EventArgs e) {//英文输入 this.richTextBox1.Focus(); for(int i=65;i<91;i++) { char Letter=(char)i; SendKeys.Send(Letter.ToString()); System.Threading.Thread.Sleep(100); SendKeys.Flush(); } for(int i=97;i<123;i++) { char Letter=(char)i; SendKeys.Send(Letter.ToString()); System.Threading.Thread.Sleep(100); SendKeys.Flush(); }

相关主题
文本预览
相关文档 最新文档