|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.02.2008, 15:08 | #1 |
Регистрация: 06.02.2008
Сообщений: 3
|
TWebBrowser.Navigate2() Помогите новичку
Использую Navigate2() для посылки данных в цикле по количеству строк в таблице SG , но что то ничего не получается( подскажите пож где я делаю не так.
// когда навигация закончена FlagComplete:=True; procedure TGForm.WebBNavigateComplete2(Sender : TObject; const pDisp: IDispatch; var URL: OleVariant); begin FlagComplete:=True; end; //******************** // выполнение навигации 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 if (FlagComplete) then begin GForm.SendData(SG.Cell[1,i]); end else begin sleep(1000*5); end; end; end; //************** происходит выполнение только первого перехода ( видимо цикл проходит раньше чем webBrowser справляется с командой... пробовал в цикл ставить задержку sleep(1000*10); не помогло( помогите пож - кто знает. |
06.02.2008, 22:04 | #2 |
Пользователь
Регистрация: 25.12.2006
Сообщений: 64
|
Я делаю так:
Код:
|
06.02.2008, 22:57 | #3 |
Регистрация: 06.02.2008
Сообщений: 3
|
попробую описать подоступнее
попробую описать ещё раз при переходе на траничку 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]); ... и т.д. но тут для каждого вопроса я должен править код программы так как вопросов может быть любое количество. |
06.02.2008, 22:57 | #4 |
Регистрация: 06.02.2008
Сообщений: 3
|
т.е. адрес интернете:
'url:=www. .... MyPage.php'; 'ждёт' пременную AText. с помощью кода WebBrowser.Navigate('www. .... MyPage.php?AText:=Hallo World'); ничего не произошло, а с помощью перегруженной, переменная заполнилась (Спасибо ресурсам интернета!) WebBrowser.Navigate2(URLN, Flags, TargetFrameName, PostData, Headers); задача состояла в том чтобы отправлять несколько раз - каждый раз разные значения переменной For i:=1 to SG.RowCount do begin AText:=SG.Cells[1,i]; end; вот не пойму как в цикле подобное выразить.. сейчас приходится пользоваться : case myNumberData of // 01:SendData(SG.Cells[1,1]); // 02:SendData(SG.Cells[1,2]); ... и т.д. хоть и работает, но тут есть ограничение на количество строк таблицы... неужели так нельзя сделать?: For i:=1 to SG.RowCount do begin SendData(SG.Cell[1,i]); end; вот в в этом собственно вопрос. -( у меня пока не получилось(( |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите новичку... | Манжосов Денис :) | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 11 | 28.08.2008 10:00 |
Помогите с TWebbrowser-ом | Dr.XxX | Общие вопросы Delphi | 4 | 12.05.2008 12:43 |
Помогите новичку | vorron | Свободное общение | 8 | 15.03.2008 08:56 |
Помогите новичку | HIP | Общие вопросы Delphi | 1 | 19.12.2006 14:55 |
помогите новичку | fox_root | Общие вопросы Delphi | 1 | 15.12.2006 19:10 |