Привет %username%! Вот какой вопрос: Нужно получить координаты курсора, это делается простой функцией Mouse.GetPosition( ui elementname); Но вот в чем проблема - координаты получаются относительно какого либо элемента, либо как елемент можно указать окно в целом. Однако, это не работает, если курсор находиться на самой форме webbrowser, то есть получается - что это уже другое окно. Вопрос: Как получить координаты курсора с "внутренностей" Webbrowser(например открыта страница google.com ).
Через винапи, получаешь хендлер нужного окна и дальше уже мутишь что хочешь. P.S Можно ещё через BSOD но хз, не тестил.
Не, через Бсод только айпи получить можно. По сути: меня интересует как это сделать на шарпе без примесей и бубнов. Актуально.
От CodeSender Заюзай код class Program { [DllImport("user32.dll")] private static extern bool ScreenToClient(int hWnd, ref POINT lpPoint); [DllImport("user32.dll")] private static extern int GetForegroundWindow(); static void Main(string[] args) { POINT lp = new POINT(); int handle = GetForegroundWindow(); ScreenToClient(handle, ref lp); } struct POINT { public int X; public int Y; } }
Я уже пробовал похожим образом - не катит. Но вроде бы проблему нашёл - дело в том, что я вешал отслеживание евента MouseMove на общий Grid (впф) и по какой-то причине елемент Webbrowser не принадлежит к плоскости грида.Казалось бы - ладно, что может быть проще - вешаем евент на сам Webbrowser и ждём. Так и сделал, в итоге никак не мог понять где же лаг - полез читать доку, оказалось этот класс неимплементирован . В итоге решил пока оставить на свежую голову евент и посмотреть заработает ли всё теперь. Барабанная дробь.... и нихера. Завязал все на кнопку ф7, что бы в любой момент можно было посмотреть координаты. Итог: - Хэндлим главное окошко и браузерное, затем кастуем пункт. Не помогло. Видим левые значения. - Просто узнать позицию курсора - тоже не получается. Нет, если курсор находиться на webbrowser - выдаются одни и теже результаты, внезависимости от местоположения на самой форме. Жду ваших советов.