Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Эмуляция мыши программно: нажатие ЛКМ, ПКМ, ролик, перемещение курсора.  (Прочитано 6465 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн FluffyMan

  • Автор темы
  • Активист
  • *
  • Сообщений: 276
  • Debian 6
    • Просмотр профиля
Вопрос в теме. нужно эмулировать мышь программно. В винде есть winapi и функции Get/SetCursorPos для перемещения курсора, и mouse_event для эмуляции событий мыши. Как это все реализовать в Linuxе? Может киньте ссылкой что почитать. Гуглил, но понятного и внятного ответа не нашел. Программирую в Lazarus.

Оффлайн spectator

  • Участник
  • *
  • Сообщений: 120
    • Просмотр профиля
Гуглил
Нет, не гуглил.

готовая программа на си
https://gist.github.com/726474

Ман по функциям xlib
http://tronche.com/gui/x/xlib/

как всё это прикрутить к лазарусу(вообще, как я понял, этот хидер реализует некоторые winapi функции через gtk)
http://lazarus.sourcearchive.com/documentation/0.9.28.2-9/gtkwinapi_8inc-source.html

Оффлайн FluffyMan

  • Автор темы
  • Активист
  • *
  • Сообщений: 276
  • Debian 6
    • Просмотр профиля
   Так понял, этим делом занимается икс сервер и его функции надо использовать. Спасибо, буду искать описание на русском функций этой библиотеки.
   И еще. Находил статью, где автор рассказывал о пакете libwine-dev. вроде как там реализованы windowsapi для Linuxа.
(Нажмите, чтобы показать/скрыть)
если кто пользовался, отпишитесь здесь. какие там функции реализованы? есть где полный список функций этого пакета? и желательно их описание.
   Заранее спасибо)
« Последнее редактирование: 13 Июля 2011, 13:24:14 от Fluffy1234567890 »

Оффлайн Sova777

  • Участник
  • *
  • Сообщений: 208
    • Просмотр профиля
    • Несколько слов о NetBeans C/C++ Pack'е
Пользователь OpenSolaris 2008.11, Ubuntu 8.10, Windows XP. Mac OS X не нравится, стараюсь не использовать.

Оффлайн FluffyMan

  • Автор темы
  • Активист
  • *
  • Сообщений: 276
  • Debian 6
    • Просмотр профиля
вот еще ссылка
(Нажмите, чтобы показать/скрыть)

Пользователь решил продолжить мысль 13 Июля 2011, 13:28:54:
Цитировать
Будет ли это работать в Wayland
у большинства стоит Xorg. Поэтому советуют именно под него, я так понял.
« Последнее редактирование: 13 Июля 2011, 13:28:54 от Fluffy1234567890 »

Оффлайн spectator

  • Участник
  • *
  • Сообщений: 120
    • Просмотр профиля
Будет ли это работать в Wayland
Я, конечно, совершенно не в теме, но вроде пока что его запускают через икс сервер.

Оффлайн FluffyMan

  • Автор темы
  • Активист
  • *
  • Сообщений: 276
  • Debian 6
    • Просмотр профиля
давайте не отклоняться от темы. помогите разобраться пожалуйста. мне нужно программно эмулировать мышь полностью (передвижение, нажатия клавиш, отжатие клавиш тоже, прокрутка колесика) я так понимаю, для моей цели нужно сделать три шага: 1) подключиться к дисплею. 2) считывать координаты курсора, устанавливать новые, собственно эмулировать события 3) отключиться от дисплея.

как это реализовать на паскале? в лазарусе то есть

Оффлайн RazrFalcon

  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
Про лазарус не знаю, но в кьюте точно есть.
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн FluffyMan

  • Автор темы
  • Активист
  • *
  • Сообщений: 276
  • Debian 6
    • Просмотр профиля
Цитировать
Про лазарус не знаю, но в кьюте точно есть.
хорошо. пусть будет кути. с си++ знаком на базовом уровне.
(Нажмите, чтобы показать/скрыть)

расскажите как это реализовать в кути. или поделитесь ссылкой

Пользователь решил продолжить мысль 13 Июля 2011, 20:47:09:
под виндой в делфи программа в процессе написания. отлажу ее полностью, доведу до "готовности". в планах реализовать ее и под Linux. вот и наперед интересуюсь.
« Последнее редактирование: 13 Июля 2011, 20:47:46 от Fluffy1234567890 »

Оффлайн RazrFalcon

  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
QCursor *cursor = new QCursor;
cursor->setPos(100,100);
остальное гуглится довольно быстро
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн FluffyMan

  • Автор темы
  • Активист
  • *
  • Сообщений: 276
  • Debian 6
    • Просмотр профиля
спасибо. как буду пробовать - отписывать буду в эту тему.

 

Страница сгенерирована за 0.016 секунд. Запросов: 21.