Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Delphi WebBrowser не работает [ENTER] (https://forum.antichat.xyz/showthread.php?t=21185)

donetsk 01.07.2006 12:01

Delphi WebBrowser не работает [ENTER]
 
Вопрос использую компонент WebBrowser -полный аналог IE.
после настройки его , модернизации и всего прочего всё отлично работает тот же ie , но в IE после нажатия кнопки Еnter на некоторых сайтах срабатывает кнопка пост , допустим на www.yandex.ru вы нажимаете Enter и у вас срабатывает кнопка найти, но в WebBrowser после нажатия на Enter такого почему-то не происходит?!
ПОЧЕМУ?КТО МОЖЕТ ПОДСКАЗАТЬ КАК ЭТУ ПРОБЛЕМУ РЕШИТЬ?

lo0 01.07.2006 12:03

Нужно фокус по дефаулту на браузер поставить.

donetsk 01.07.2006 12:53

Цитата:

Нужно фокус по дефаулту на браузер поставить.
а как это сделать?

Brun 01.07.2006 13:17

Кнопки обрабатывать нужно

donetsk 01.07.2006 13:33

ну вот на примере отработки кноки "Найти!" на сайте www.ya.ru
делаем загрузку www.ya.ru по созданию формы:
WebBrowser1.Navigate('www.ya.ru');

дальше делаем кнопку на форме:


procedure TForm1.Button1Click(Sender: TObject);
var
ovElements: OleVariant;
i: Integer;
begin
ovElements := WebBrowser1.OleObject.Document.forms.item(0).eleme nts;
for i := 0 to (ovElements.Length - 1) do
if (ovElements.item(i).tagName = 'INPUT') and
(ovElements.item(i).type = 'SUBMIT') and
(ovElements.item(i).Value = 'Recent Charges') then
ovElements.item(i).Click;



end;


Кнопка "Найти" имеет type="submit вроде бы всё нормально, но не работет? ! :( почему?

lo0 01.07.2006 16:11

Т.е. ты хочешь, чтобы у тебя на форме были собственные edit (поля для ввода) и кнопка "поиск", при нажатии на которую, происходил поиск на www.ya.ru по шаблону, задонному в твоем edit'е?

procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate('http://www.yandex.ru/yandsearch?rpt=rad&text='+edit1.text); // точно не помню, как на делфи строки соединять :(
end;

Оно?

donetsk 01.07.2006 21:57

lo0 нет, нет, нет ;) я не это хочу!

Если вы в обычном IE зайдете загрузите www.ya.ru в строке для ввода слова для поиска вбьёте его и нажмете на клавиатуре кнопку Enter , тогда у Вас произведеться поиск на данной страничьке.

Но если же вый зайдете на сайт www.ya.ru через компоненть TWebBrowser введете на стриничьке слово для поиска и нажмете на клавиатуре кнопку Enter , то ничего не произойдет :( ПОЧЕМУ Я НЕ ЗНАЮ?! и как сделать так чтобы в TWebBrowser , кнопка Enter работала как в IE?

asm33 02.07.2006 00:34

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

donetsk 02.07.2006 01:38

asm33 да нет не надо никаких универсальных обычное нажатие кноки ентер - почму в ie Оно работает , а в компоненте нет?!
Нужно сделать чтобы просто нажалась кнопка найти на www.ya.ru нажалась по нажатию кноки enter.
Как это сделать кто нибуть знает?!

~Fenix~ 02.07.2006 02:58

для начала нужно сделать первоночально твой edit активным , думаю с этим проблем нету, а потом просто создай процедуру(там есть специальная точно названия не помню) для компонента edit и ты получиш результат...
зы если я неправильно понял то отпишись


Время: 21:30