![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Имеется компонент 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
|
||||
|
||||
|
Создаешь форму, например Form2-это будет сплэш-форм, далее в обработчике события FormShow, пишешь код: Form2.showModal.
У компонента TWebBrowser в обработчике собития: OnDocumentComplete, в нем пишешь следующий код Form2.close; Вот и все ![]() |
|
#3
|
|||
|
|||
|
Спасибо. Я в принципе представляю себе как это сделать, может подскажете примером кода. Спасибо
|
|
#4
|
|||
|
|||
|
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
|
||||
|
||||
|
OnDownloadBegin:
Код:
Panel1.Visible:=true; Panel1.Width:=WebBrowser1.Width; Panel1.Height:=WebBrowser1.Height; Panel1.Top:=WebBrowser1.Top; Panel1.Left:=WebBrowser1.Left; Код:
Panel1.Visible:=false; |
|
#6
|
|||
|
|||
|
Спасибо народ. Что-то я окончательно запутался. Но все равно спасибо, буду пробовать.
|