Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 05.02.2008, 23:03
НВ25 НВ25 вне форума
Прохожий
 
Регистрация: 05.02.2008
Сообщения: 4
Репутация: 10
По умолчанию Помогите новичку с TWebBrowser.Navigate2()

пробую написать программку в которой
по количеству строк в таблице SG происходит навигация

//********************
// выполнение навигации
procedure SendData(TargetData:integer);
begin
....
в которой навигация осуществляется :
GForm.WebB.Navigate2(URLN, Flags, TargetFrameName, PostData, Headers);
ShowMessage('Данные отправлены');
end;
//***************
procedure TGForm.Timer1Timer(Sender: TObject);
var
i:integer;
begin
For i:=1 to SG.RowCount do
begin
GForm.SendData(i);
end;
end;
//**************

происходит выполнение только первого перехода

видимо цикл проходит раньше чем webBrowser справляется с командой...
пробовал в цикл ставить задержку sleep(1000*10);
не помогло - помогите пож - кто знает.
Ответить с цитированием
  #2  
Старый 06.02.2008, 00:05
НВ25 НВ25 вне форума
Прохожий
 
Регистрация: 05.02.2008
Сообщения: 4
Репутация: 10
По умолчанию

в преведущем сообщении опечатка
вот правильный вариант
//***************
procedure TGForm.Timer1Timer(Sender: TObject);
begin
For i:=1 to SG.RowCount do
begin
GForm.SendData(SG.Cells[1,i]);
end;
end;
//**************
Ответить с цитированием
  #3  
Старый 06.02.2008, 23:01
НВ25 НВ25 вне форума
Прохожий
 
Регистрация: 05.02.2008
Сообщения: 4
Репутация: 10
По умолчанию

попробую описать подоступнее
при переходе на траничку http://MySite.ru/myPage.php
//--------
возникает формочка - с вопросом
"Столица Берлина?"
и в текстовое поле предлагается ввести (переменная AText)
и кнопочка 'ОК'
//--------
после того как вы ввели туда некий текст и нажали кнопку 'ок'
вы видите
формочку 'Вы действительно считаетет (AText) столицей Берлина? '
и кнопочка 'ОК'
//--------
после нажатия кнопки Вы видите окно - с вопросом
"Столица Германии?"
если на один вопрос получается ответить програмно используя WebBrowser.Navigate2();
то на несколько вопросов подряд - программно отчетить не получается.
(предложенные вами варианты с использованием indy не срабатывают даже на первый переход)
А в цикл

For i:=1 to SG.RowCount do
Begin
SendData(SG.Cells[1,i]);
end;


какую то задержку кроме sleep и проверять отправились ли данные/загрузилась ли страничка и если отправились/загрузилась - то только после этого переходить к следующему обходу в цикле.
вот пока у меня это работает таким кодом

if (FlagComplete)and(FlagBoosy) then
begin
//Timer1.Enabled:=False;
FlagBusy:=False;
Inc(myNumberData);
case myNumberData of
//
01:SendData(SG.Cells[1,1]);
//
02:SendData(SG.Cells[1,2]);
... и т.д.


но тут для каждого вопроса я должен править код программы
так как вопросов может быть любое количество.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 19:29.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter