Полезная информация

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

№102-01-2012 21:21:56

greenpiece
Участник
 
Группа: Members
Зарегистрирован: 02-01-2012
Сообщений: 1
UA: Opera 11.6

Получить текст для поиска с ya.ru

Добрый день.

Есть такая задача. Нужно получить текст, который вводит пользователь в edit на страничке, например, ya.ru. Сделать это нужно с помощью c++. С помощью IAccessible я смог получить все дочерние окна браузера, но не элементы управления на странице. То есть можно получить URL страницы, но не текст на странице. Есть ли способ это сделать, возможно, с помощью не IAccessible, чего-то другого?

P.S. Грязный хак вроде управления мышью и клавиатурой для выделения нужного текста не пойдет. FindWindowEx тоже не сработает, уже пробовался такой вариант.

Отсутствует

 

№203-01-2012 01:03:14

iDev.Pi
баг-репортёр
 
Группа: Extensions
Зарегистрирован: 31-01-2010
Сообщений: 2718
UA: Nightly 12.0

Re: Получить текст для поиска с ya.ru

greenpiece
на указанной вами странице нет "edit". Подозреваю, что вы имел в виду поисковую строку на той странице.
В таком случае не понятно, про какого пользователя идёт речь. Если этот пользователь вы сами - то вы можете выделить введённый вами текст и скопировать в буфер обмена клавишесочетанием CTRL+C.
Если под пользователем понимается кто-то, кто использует вашу машину, ваш браузер и ваш профиль в нём - то можно написать javascript сценарий, который будет сохранять всё, что вводится пользователем на той странице. Установить этот сценарий в браузер можно с помощью дополнений вроде Scriptish или GreaseMonkey. Обратиться за помощью в написании такого сценария можно сюда.


mzfx

Отсутствует

 

№303-01-2012 11:06:48

hydrolizer
Участник
 
Группа: Extensions
Зарегистрирован: 22-07-2009
Сообщений: 1945
UA: Firefox 10.0

Re: Получить текст для поиска с ya.ru

greenpiece
Если контрол ввода в фокусе, то его можно получить через nsIDOMXULCommandDispatcher.focusedElement, текст контрола - например, через nsIDOMHTMLInputElement.value. Метод не универсальный - например, в случае с полем ввода, поддерживающем отображение форматированного текста, он не сработает.

greenpiece пишет

FindWindowEx тоже не сработает, уже пробовался такой вариант.

В xul-окнах контролы не являются отдельными вложенными окнами (в отличие от, например, обычных win32-приложений); отрисовкой этих контролов занимается xul-движок, и делает это очень своим образом. Так что да, FindWindowEx не поможет.

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]