![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TWebBrowser и ReadyState
Ш-К © (2007-01-26 11:35:00)Я ловлю загрузку документа через код:
procedure TEmbeddedWB.Wait;
begin
while ReadyState <> READYSTATE_COMPLETE do
begin
Forms.Application.ProcessMessages;
end;
end;
Когда TWebBrowser лежит на видимой форме/контроле, это работает.
Но когда TWebBrowser невидим (например, лежит на неактивной закладке), READYSTATE_COMPLETE ниикогда не наступит.
Приходится обрабатывать что-то типа:
procedure TEmbeddedWB.Wait;
begin
while ReadyState <> READYSTATE_INTERACTIVE do
begin
Forms.Application.ProcessMessages;
end;
end;
Как объеденить эти обработчики в нутре TWebBrowser?
Плохиш (2007-01-26 13:40:00) [1]
> Ш-К (26.01.07 13:03) [2]
> Под объединением я понимал
Тогда жди, когда телепаты из отпуска выдут...
Ш-К (2007-01-26 13:03:00) [2]Под объединениемя понимал проверку состояний контрола. Чтобы в зависимости "открытый" он или "закрытый" выполнять тот или иной код.
Может есть метод, который возвращает это св-во?
Понятно, что(Parent <> nil) and Parent.Visibleне подходит.
Плохиш (2007-01-26 12:08:00) [3]
while not ReadyState in [READYSTATE_COMPLETE, READYSTATE_INTERACTIVE] do
или
while (ReadyState <> READYSTATE_COMPLETE) and (ReadyState <> READYSTATE_INTERACTIVE) do
Основы паскаля пора бы и поучить, в конце концов.