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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.02.2012, 13:42
bibika bibika вне форума
Прохожий
 
Регистрация: 13.12.2011
Адрес: Львов
Сообщения: 18
Репутация: 10
По умолчанию TWebBrowser полная загрузка

Имеется компонент TWebBrowser, который грузит с диска большое дерево на html и JavaScript. При первом запуске программы наблюдается некоторая задержка при прорисовке страницы. Подскажите, как на время полной загрузки страницы, закрыть ее другой формой - типа сплаш скрина. Я себе так вижу алгоритм "Показывать Сплаш форм пока вся страница не загрузится". Помогите с доработкой вот такого простого кода:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var dirsp:string;

begin
GetDir (0, dirsp);
dirsp:=dirsp+'/html/index.htm';
wb1.Navigate(dirsp);
end;


Спасибо
Ответить с цитированием
  #2  
Старый 27.02.2012, 18:27
Аватар для Belanserg
Belanserg Belanserg вне форума
Прохожий
 
Регистрация: 18.11.2009
Сообщения: 29
Версия Delphi: 7
Репутация: 12
По умолчанию

Создаешь форму, например Form2-это будет сплэш-форм, далее в обработчике события FormShow, пишешь код: Form2.showModal.

У компонента TWebBrowser в обработчике собития: OnDocumentComplete, в нем пишешь следующий код Form2.close;

Вот и все
Ответить с цитированием
  #3  
Старый 27.02.2012, 18:35
bibika bibika вне форума
Прохожий
 
Регистрация: 13.12.2011
Адрес: Львов
Сообщения: 18
Репутация: 10
По умолчанию

Спасибо. Я в принципе представляю себе как это сделать, может подскажете примером кода. Спасибо
Ответить с цитированием
  #4  
Старый 27.02.2012, 20:03
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

1. Не ShowModal, а просто Show;
2. Как-то так:
Код:
uses Unit2; // Form2 

procedure Form1.FormCreate(Sender : TObject);
begin
  // To be sure that Form2 is not assigned
  Form2 := Nil;
end;

procedure Form1.Button1Click(Sender : TObject);
begin
  Form2 := TForm2.Create(Application);
  Form2.Show;
  Form2.Update;
  WebBrawser1.Navigate(...);
end;

procedure Form1.WebBrowser1DocumentComplete(Sender : TObject);
begin
  If Assigned(Form2) Then
    FreeAndNil(Form2);
end;
Ответить с цитированием
  #5  
Старый 27.02.2012, 20:40
Аватар для Guroncheg
Guroncheg Guroncheg вне форума
Прохожий
 
Регистрация: 27.02.2012
Адрес: Украина, Хмельницкий
Сообщения: 4
Версия Delphi: Delphi 7.0.4.45
Репутация: 10
По умолчанию

OnDownloadBegin:
Код:
Panel1.Visible:=true;
Panel1.Width:=WebBrowser1.Width;
Panel1.Height:=WebBrowser1.Height;
Panel1.Top:=WebBrowser1.Top;
Panel1.Left:=WebBrowser1.Left;
OnDownloadComplete:
Код:
Panel1.Visible:=false;
На самой панельке - полет фантазии) Рисуем что нравится.
Ответить с цитированием
  #6  
Старый 27.02.2012, 22:36
bibika bibika вне форума
Прохожий
 
Регистрация: 13.12.2011
Адрес: Львов
Сообщения: 18
Репутация: 10
По умолчанию

Спасибо народ. Что-то я окончательно запутался. Но все равно спасибо, буду пробовать.
Ответить с цитированием
  #7  
Старый 27.02.2012, 23:59
Аватар для Guroncheg
Guroncheg Guroncheg вне форума
Прохожий
 
Регистрация: 27.02.2012
Адрес: Украина, Хмельницкий
Сообщения: 4
Версия Delphi: Delphi 7.0.4.45
Репутация: 10
По умолчанию

Вот пример:
http://depositfiles.com/files/mee4eak51
Ответить с цитированием
  #8  
Старый 28.02.2012, 08:58
bibika bibika вне форума
Прохожий
 
Регистрация: 13.12.2011
Адрес: Львов
Сообщения: 18
Репутация: 10
По умолчанию

Спасибо, скачал буду разбираться. Спасибо Guroncheg за подсказку.
Но есть проблема, если открывать страницы с интернета все работает. Но если открывать с диска, Panel1 не показывается. Может подскажете в чем проблема.

Последний раз редактировалось bibika, 28.02.2012 в 12:46.
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

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