Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
Юзер с абсолютным слухом
 Аватар для Опан
709 / 489 / 195
Регистрация: 17.12.2010
Сообщений: 1,428

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

28.12.2011, 22:49. Показов 3240. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Как на VB программно установить курсор мыши в заданное место на экране (на всём экране, а не на форме VB) и симитировать в этом месте одиночный клик левой кнопкой мыши? За раннее благодарю.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.12.2011, 22:49
Ответы с готовыми решениями:

Как программно симитировать события?
Допустим у нас есть событие - клик мышью по форме на таких то координатах. Так вот как можно программно, без всяких действий пользователя...

Программно установить курсор в центр экрана
Ребят, я всех приветствую. Ситуация — 6 мониторов на одном компе. В выходные включен только один монитор в центре, остальные вроде...

Поставить точку на физическом отрезке в заданном реальным значением месте
Не знаю на каком форуме задаются подобные вопросы, попробую здесь. Есть отрезок определённой физической длины L, например 300 пикселей. ...

8
525 / 487 / 99
Регистрация: 25.12.2011
Сообщений: 1,176
28.12.2011, 22:59
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Private Const MOUSEEVENTF_ABSOLUTE = &H8000 
Private Const MOUSEEVENTF_LEFTDOWN = &H2 
Private Const MOUSEEVENTF_LEFTUP = &H4 
Private Const MOUSEEVENTF_MIDDLEDOWN = &H20 
Private Const MOUSEEVENTF_MIDDLEUP = &H40 
Private Const MOUSEEVENTF_MOVE = &H1 
Private Const MOUSEEVENTF_RIGHTDOWN = &H8 
Private Const MOUSEEVENTF_RIGHTUP = &H10 
 
Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cbuttons As Long, ByVal dwExtraInfo As Long) 
 
Public Enum enButtonToClick 
btcLeft 
btcRight 
btcMiddle 
End Enum 
 
Public Sub MouseClick(ByVal MBClick As enButtonToClick) 
 
Dim cbuttons As Long, dwExtraInfo As Long, mevent As Long 
Select Case MBClick 
Case btcLeft 
mevent = MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP 
Case btcRight 
mevent = MOUSEEVENTF_RIGHTDOWN Or MOUSEEVENTF_RIGHTUP 
Case btcMiddle 
mevent = MOUSEEVENTF_MIDDLEDOWN Or MOUSEEVENTF_MIDDLEUP 
Exit Sub 
End Select 
Call mouse_event(mevent, 0&, 0&, cbuttons, dwExtraInfo) 
End Sub 
 
Public Sub MouseMove(ByRef X As Long, ByRef Y As Long) 
Dim cbuttons As Long, dwExtraInfo As Long 
Call mouse_event(MOUSEEVENTF_ABSOLUTE Or MOUSEEVENTF_MOVE, X, Y, cbuttons, dwExtraInfo) 
End Sub 
 
Private Sub Command1_Click()
MouseMove 0, 0  ' Координаты
MouseClick btcLeft ' Клик мыши
End Sub
1
Юзер с абсолютным слухом
 Аватар для Опан
709 / 489 / 195
Регистрация: 17.12.2010
Сообщений: 1,428
28.12.2011, 23:34  [ТС]
Большое спасибо!
0
Юзер с абсолютным слухом
 Аватар для Опан
709 / 489 / 195
Регистрация: 17.12.2010
Сообщений: 1,428
29.12.2011, 00:49  [ТС]
Ещё забыл спросить - возможно ли в клике симитировать отдельно нажатие и отдельно отжатие левой кнопки мыши? Если да, то как?
0
525 / 487 / 99
Регистрация: 25.12.2011
Сообщений: 1,176
29.12.2011, 00:55
Вообще как бы да....

Visual Basic
1
2
Private Const MOUSEEVENTF_LEFTUP = &H4 'Отжата 
Private Const MOUSEEVENTF_LEFTDOWN = &H2 'Нажата
0
Эксперт Hardware
 Аватар для Linoge
3205 / 1915 / 324
Регистрация: 25.10.2011
Сообщений: 5,564
29.12.2011, 00:56
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
 
Const MOUSEEVENTF_MIDDLEDOWN  = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
 
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10
 
Call mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0) 'нажатие
Call mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0) 'отжатие
1
525 / 487 / 99
Регистрация: 25.12.2011
Сообщений: 1,176
29.12.2011, 01:00
Видишь как все оперативно).
0
29.12.2011, 01:15

Не по теме:

Оперативно и главное подтверждает не желание многих воспользоваться поиском, или хоть посмотреть на десяток тем раньше.

0
Юзер с абсолютным слухом
 Аватар для Опан
709 / 489 / 195
Регистрация: 17.12.2010
Сообщений: 1,428
29.12.2011, 02:22  [ТС]
Во всём разобрался, всем большое спасибо. Перед этим просидел в google целый час и ничего путного не нашёл, а вот на этом форуме действительно забыл воспользоваться поиском.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.12.2011, 02:22
Помогаю со студенческими работами здесь

Обработка нажатий кнопок созданных программно в заданном месте разметки
Здравствуйте, собственно проблема: как сделать кнопки в андроид(не простые через button@id а золотые), кнопки округлой формы, желательно с...

Написать программу, которая меняет на экране атрибуты строки символов в заданном месте экрана.
Помогите пожл, очень нужно Написать программу, которая меняет на экране атрибуты строки символов в заданном месте экрана. row –...

Как сделать, что бы в Memo1, на месте (строке) где стоит курсор, выделялась цветом строчка, где стоит печатный курсор «|»?
Как сделать, что бы в Memo1, на месте (строке) где стоит курсор, выделялась цветом строчка, где стоит печатный курсор «|»?

как осуществить авто клик в любом месте сайта
... подскажите пожалуйста какой то скрипт, котоый бы при входе посетителя на сайт кликал бы в любом месте сайта или перемещал мышкой бы......

Как нарисовать круг в месте, где произошел клик мышью
тоесть, задание такое: каждый раз, когда я кликаю по форме мышкой, в этом месте рисуется круг. и так пока не наберется 12 кружнов. в каждый...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru