Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
3 / 3 / 1
Регистрация: 29.08.2012
Сообщений: 306

Клик мышкой вне формы приложения

05.02.2021, 16:33. Показов 1053. Ответов 0
Метки c# (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Использую для определения координат using Gma.System.MouseKeyHook;

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


C#
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
42
43
44
45
46
47
public partial class Form1 : Form
    {
        private IKeyboardMouseEvents m_Events;
        
        [System.Runtime.InteropServices.DllImport("user32.dll")]
        public static extern void mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo);
 
        public const int MOUSEEVENTF_LEFTDOWN = 0x02;
        public const int MOUSEEVENTF_LEFTUP = 0x04;
        public const int MOUSEEVENTF_RIGHTDOWN = 0x08;
        public const int MOUSEEVENTF_RIGHTUP = 0x10;
 
        public Form1()
        {
            InitializeComponent();
        }
 
        private void HookManager_MouseMove(object sender, MouseEventArgs e)
        {
            labelMousePosition.Text = string.Format("x={0:0000}; y={1:0000}", e.X, e.Y);
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            SubscribeGlobal();
        }
 
        private void SubscribeGlobal()
        {
          Subscribe(Hook.GlobalEvents());
        }
 
        private void Subscribe(IKeyboardMouseEvents events)
        {
            m_Events = events;
            m_Events.MouseMove += HookManager_MouseMove;
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            int x = -1252;
            int y = -0111;
 
            mouse_event(MOUSEEVENTF_LEFTDOWN, x, y, 0, 0);
            mouse_event(MOUSEEVENTF_LEFTUP, x, y, 0, 0);
        }
    }

Как можно правильно нажать по координатам вне приложения?

Добавлено через 18 минут
Вот так сработало:

C#
1
2
3
4
5
6
7
8
9
10
11
12
        public static void LeftClick(int x, int y)
        {
            Cursor.Position = new System.Drawing.Point(x, y);
            mouse_event((int)(MOUSEEVENTF_LEFTDOWN), 0, 0, 0, 0);
            mouse_event((int)(MOUSEEVENTF_LEFTUP), 0, 0, 0, 0);
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
 
            LeftClick(-1252, -0110);
        }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.02.2021, 16:33
Ответы с готовыми решениями:

Имитация клик мышкой по координатам
Здравствуйте, подскажите почему курсор становится на координаты 0,0. static extern void mouse_event(MouseFlags dwFlags, int dx, int...

Нарисовать квадрат, реагирующий на клик мышкой
Не знаю , где писать этот пост . Можете нарисовать квадрат и если на него нажимаешь переходишь в меню с картинкой любой . это очень просто...

Узнать, по какому контролу был клик мышкой
На форме несколько компонентов. Как узнать, по которому был сделан очередной клик и вывести сообщение об этом?

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.02.2021, 16:33
Помогаю со студенческими работами здесь

Клик вне кнопки
На форме есть кнопка Button и много других контролов. Как вызвать определенный метод при любом клике (по форме или по контролам на...

Как сделать программный клик вне формы
Как сделать программный клик вне формы? (автокликер)

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

Клик мышкой
Здравствуйте, хочу сделать клик мышкой в сторонем приложение, вроде бы все просто, но почему-то иногда срабатывает, иногда нет. В каких-то...

Как глобально поймать клик мышкой
На форме получается сделать, а глобально - нет...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru