如何以编程方式将字符串粘贴到浏览器输入区域?

时间:2013-09-23 14:13:52

标签: qt

我可以用剪贴板复制一个字符串(比如Ctrl + c)但是我不能粘贴鼠标聚焦的地方..

当我复制数据时,我想将字符串粘贴到我已经集中点击浏览器的输入区域。就像用户按下Ctrl + v。

一样

我想粘贴到chrome或mozzila浏览器输入区域(我的应用程序之外)。我的操作系统是Windows ..

QClipboard *clipboard = QApplication::clipboard();
QString originalText = clipboard->text();//mevcut hafız
clipboard->setText(subString); //hafıza degistir
qDebug () << "Hafız : " << originalText;

1 个答案:

答案 0 :(得分:0)

<强>答案

如果您可以控制相关计算机上安装的操作系统和浏览器,则必须通过该操作系统和浏览器直接提供的机制来控制它。这不是Qt可以为您做的事情,它将依赖于原生API。

OTOH如果您计划将此作为更通用的目的,那么您正在寻找一个相当毛茸茸的黑客,其中包括模拟鼠标点击和键盘输入。为此,我的建议是使用像QtTestLib这样的东西。我不确定这是多么“mebeddable”,但你可以看看它的来源,了解如何移动鼠标和模拟键盘输入和点击等。

然后,方法是按标题枚举打开的窗口,过滤已知/支持的浏览器名称和版本,然后继续关注该窗口并为其提供必要的键盘快捷键流,以便将焦点放在地址栏和流字符上从剪贴板作为键盘事件。

我没有使用QtTestLib完成此操作。我的经验是Java Robot,这对任务来说非常棒。

祝你好运!