<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Управление графическим интерфейсом другого приложения</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9244.html</link>
    <description>Собственно задача следующая:&lt;br&gt;Существует два приложения, использующих графический интерфейс. Одно написано на Python c использованием wxWidgets, второе на С++ и Qt. Существует ли возможность управлять графическим интерфейсом этих двух приложений, из третьего, т.е. имитировать нажатие пользователя на различные кнопки, вводить текст в текстовые поля и т.д.Если существует то хотелось бы понять как. Пробовал использовать QDesktopWidget для получения указателя на главное окно одного из приложений:&lt;br&gt;&lt;br&gt;#include &amp;lt;QtGui&amp;gt;&lt;br&gt;#include &amp;lt;QApplication&amp;gt;&lt;br&gt;&lt;br&gt;int main(int argc, char *argv&#091;&#093;)&lt;br&gt;&#123;&lt;br&gt;    QApplication a(argc, argv);&lt;br&gt;    QDesktopWidget* deskt=a.desktop();&lt;br&gt;    QList&amp;lt;QWidget*&amp;gt; list=deskt-&amp;gt;findChildren&amp;lt;QWidget *&amp;gt;();&lt;br&gt;    qDebug()&amp;lt;&amp;lt;list;&lt;br&gt;    qDebug()&amp;lt;&amp;lt;deskt-&amp;gt;find(8322895);&lt;br&gt;    return 0;&lt;br&gt;&#125;&lt;br&gt;Где число 8322895 реальный winId одного из приложений, полученный с помощью QWidget::winId () const&lt;br&gt;В результате в консоли пустой список и нулевой указатель, т.е. ничего не получилось.&lt;br&gt;</description>

<item>
    <title>Управление графическим интерфейсом другого приложения (saker)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9244.html#3</link>
    <pubDate>Mon, 26 Sep 2011 07:44:13 GMT</pubDate>
    <description>&amp;gt; Через Qt тяжело и долго. Как и сказал предыдущий оратор Xlib (посмотри &lt;br&gt;&amp;gt; код xwininfo), для поиска. Для отправки сообщений XSendEvent (кажется).&lt;br&gt;&lt;br&gt;Большое спасибо откликнувшимся. Реализовал через Xlib.&lt;br&gt;</description>
</item>

<item>
    <title>Управление графическим интерфейсом другого приложения (StreSS)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9244.html#2</link>
    <pubDate>Sat, 24 Sep 2011 11:07:10 GMT</pubDate>
    <description>Через Qt тяжело и долго. Как и сказал предыдущий оратор Xlib (посмотри код xwininfo), для поиска. Для отправки сообщений XSendEvent (кажется).&lt;br&gt;</description>
</item>

<item>
    <title>Управление графическим интерфейсом другого приложения (gpl77)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9244.html#1</link>
    <pubDate>Fri, 23 Sep 2011 14:54:39 GMT</pubDate>
    <description>&amp;gt; Собственно задача следующая: &lt;br&gt;&amp;gt; Существует два приложения, использующих графический интерфейс. Одно написано на Python &lt;br&gt;&amp;gt; c использованием wxWidgets, второе на С++ и Qt. Существует ли возможность &lt;br&gt;&amp;gt; управлять графическим интерфейсом этих двух приложений, из третьего, т.е. имитировать &lt;br&gt;&amp;gt; нажатие пользователя на различные кнопки, вводить текст в текстовые поля и &lt;br&gt;&amp;gt; т.д.&lt;br&gt;&lt;br&gt;можно. В XLib есть XSendEvent.&lt;br&gt;получаете список окошек, выбираете свое и пуляете туда что угодно.&lt;br&gt;как сделать через Qt - не знаю.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
