我试图了解我编写的程序如何控制我正在运行的GUI程序。我不确定GUI程序是否必然会为开发人员公开API。因此,我认为最好的方法是让我的程序能够临时专门控制键盘和鼠标,或者与用户共享控件(只要用户不使用程序可以控制鼠标的资源) /键盘)。
我不知道该怎么做。我知道C / C ++,Python和Java。我主要想在Windows上实现这一点(我知道C#)。
我不确定我要查找的内容(就关键字而言)所以我不知道如何谷歌获取信息。任何帮助将不胜感激。
编辑:我想我已经提到我只是在寻找一种方法来控制鼠标和键盘。此代码的输入将来自另一段代码(希望)知道鼠标/键盘必须做什么。目前我只想学习如何使用预定义的控制命令来控制鼠标/键盘(例如移动到位置(100,100),单击,键入" abcd"等等。
答案 0 :(得分:2)
如果你想伪造一些鼠标/键盘事件,请输入SendInput。
答案 1 :(得分:1)
如果您知道如何使用python编程,则有一个名为pyautogui的模块。 安装此模块的步骤如下: 如果您使用的是Windows,并且已安装python。 确保您已连接到互联网 打开CMD并键入:pip install pyautogui
答案 2 :(得分:0)
您可以使用system.windows.forms移动鼠标并在C#中编写键盘输入。 例如,以下代码使用system.windows.forms中的基本方法来移动鼠标并写入键盘输入
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//Make sure to add these as references in your project ahead of time
using System.Drawing;
using System.Windows.Forms;
namespace ConsoleApplication14
{
class Program
{
static void Main(string[] args)
{
//The following code sets the cursor position to the point Xpos,Ypos
//on the screen
int Xpos = 0;
int Ypos = 0;
Cursor.Position = new Point(Xpos,Ypos);
//The following writes the string KeyData to keyboard input
string KeyData = "Hello World";
SendKeys.SendWait(KeyData);
}
}
}
你还需要System.Drawing用鼠标光标操纵点,所以不要忘记它!
这是一个精彩的视频,包含与鼠标和键盘移动相关的信息https://www.youtube.com/watch?v=48k9eyVsC-M
注意:虽然这些方法对于将鼠标移动到我的知识非常好,但它们不会导致鼠标点击,因此您需要在其他地方进行研究以获取该信息
祝你好运!