unelegante Billiglösung:
Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
PageControl1.ActivePageIndex = 1; // Index der Seite, auf der sich der "Übeltäter" befindet.
end;
(Alternativ: Sofern eine "Beenderoutine" vorhanden, dort den ActivePageIndex ändern.)
Eventuell beim Beenden einen von den Beiden versuchen:
Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
WebBrowser1.Stop;
WebBrowser1.Quit;
end;
In einer Schleife warten, bis
WebBrowser1.Busy = false;
ist.
Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
// Keine Ahnung, ob hier die Gefahr einer Endlosschleife besteht,
// weil Busy beim Programmbeenden eventuell nicht mehr false werden sollte...
if WebBrowser1.Busy then repeat
WebBrowser1.Stop;
WebBrowser1.Quit;
Sleep(1000);
until not WebBrowser1.Busy;
end;
(Alles nur so hingedaddelt und ungetestet, keine Garantie für Wirksamkeit.)