Evento OnNewWindow2 do TWebBrowser (Sério!)
Preciso desta ajuda urgente, pois estou correndo riscos. Vamos lá...
Tenho um código que faz com que uma nova janela seja sempre aberta em meu próprio browser através de novas Tabs criadas por um PageControl (como no Ópera e no Netscape novo), pois aqui na firma os formulário em ASP da rede precisam ser lidos por este browser que fiz usando o TWebBrowser por causa de algumas funções extras. Aí vem o problema: os botões de voltar/ir/avançar/parar/atualizar... e as funções do browser ligadas ao componente TWebBrowser só funcionam para o 1º documento aberto. Veja o código:
Var
NewTab : TSeCustomTabSheet; //==Este é o Page Control (novas Tabs são criadas)
MyWEB : TWebBrowser; //==Este é o Browser (novas páginas criadas dentro das páginas criadas no Page Control)
begin
NewTab := TSECUSTOMTabSheet.Create(Self);
NewTab.TabControl := PageControlBrowser;
NewTab.Caption := ´Link Aberto nº´+IntToStr(PageControlBrowser.PageCount);
// Acima, na verdade, eu queria o título da página...
inc(HistoryIndex);
NewTab.Name:=´TabPage_´+IntToStr(HistoryIndex);
NewTab.Tag:= HistoryIndex;
PageControlBrowser.ActivePage := NewTab;
MyWEB:= TWebbrowser.Create(Self);
TControl(MyWEB).Parent := NewTab;
// A partir daqui o novo TWebBrowser recebe as propriedades do antigo...
MyWEB.HandleNeeded;
MyWEB.OnNewWindow2 := Webbrowser1.OnNewWindow2;
MyWEB.OnBeforeNavigate2 := WebBrowser1.OnBeforeNavigate2;
MyWEB.OnCommandStateChange := WebBrowser1.OnCommandStateChange;
MyWeb.OnDownloadComplete:=WebBrowser1.OnDownloadComplete;
MyWeb.OnDocumentComplete:=WebBrowser1.OnDocumentComplete;
Myweb.OnDownloadBegin:=WebBrowser1.OnDownloadBegin;
Myweb.OnEnter:=WebBrowser1.OnEnter;
myweb.OnExit:=WebBrowser1.OnExit;
myweb.OnProgressChange:=WebBrowser1.OnProgressChange;
myweb.OnStatusTextChange:=WebBrowser1.OnStatusTextChange;
myweb.OnTitleChange:=WebBrowser1.OnTitleChange;
MyWEB.Align:=alClient;
MyWEB.Visible := True;
ppdisp := MyWEB.Application;
end;
Entende na verdade qual é o meu problema? O quanto antes me ajudarem, melhor, ok?
Obrigado!
Tenho um código que faz com que uma nova janela seja sempre aberta em meu próprio browser através de novas Tabs criadas por um PageControl (como no Ópera e no Netscape novo), pois aqui na firma os formulário em ASP da rede precisam ser lidos por este browser que fiz usando o TWebBrowser por causa de algumas funções extras. Aí vem o problema: os botões de voltar/ir/avançar/parar/atualizar... e as funções do browser ligadas ao componente TWebBrowser só funcionam para o 1º documento aberto. Veja o código:
Var
NewTab : TSeCustomTabSheet; //==Este é o Page Control (novas Tabs são criadas)
MyWEB : TWebBrowser; //==Este é o Browser (novas páginas criadas dentro das páginas criadas no Page Control)
begin
NewTab := TSECUSTOMTabSheet.Create(Self);
NewTab.TabControl := PageControlBrowser;
NewTab.Caption := ´Link Aberto nº´+IntToStr(PageControlBrowser.PageCount);
// Acima, na verdade, eu queria o título da página...
inc(HistoryIndex);
NewTab.Name:=´TabPage_´+IntToStr(HistoryIndex);
NewTab.Tag:= HistoryIndex;
PageControlBrowser.ActivePage := NewTab;
MyWEB:= TWebbrowser.Create(Self);
TControl(MyWEB).Parent := NewTab;
// A partir daqui o novo TWebBrowser recebe as propriedades do antigo...
MyWEB.HandleNeeded;
MyWEB.OnNewWindow2 := Webbrowser1.OnNewWindow2;
MyWEB.OnBeforeNavigate2 := WebBrowser1.OnBeforeNavigate2;
MyWEB.OnCommandStateChange := WebBrowser1.OnCommandStateChange;
MyWeb.OnDownloadComplete:=WebBrowser1.OnDownloadComplete;
MyWeb.OnDocumentComplete:=WebBrowser1.OnDocumentComplete;
Myweb.OnDownloadBegin:=WebBrowser1.OnDownloadBegin;
Myweb.OnEnter:=WebBrowser1.OnEnter;
myweb.OnExit:=WebBrowser1.OnExit;
myweb.OnProgressChange:=WebBrowser1.OnProgressChange;
myweb.OnStatusTextChange:=WebBrowser1.OnStatusTextChange;
myweb.OnTitleChange:=WebBrowser1.OnTitleChange;
MyWEB.Align:=alClient;
MyWEB.Visible := True;
ppdisp := MyWEB.Application;
end;
Entende na verdade qual é o meu problema? O quanto antes me ajudarem, melhor, ok?
Obrigado!
Stutz
Curtidas 0
Respostas
Stutz
17/02/2004
Pessoal, é urgentíssimo, por favor, ajudem-me...
GOSTEI 0
Stutz
17/02/2004
procedure TMainForm.WebBrowser1ProgressChange(Sender: TObject; Progress,
ProgressMax: Integer);
begin
if Progress > 0 then begin
SeSkinProgressBar1.Max := ProgressMax;
SeSkinProgressBar1.Position := Progress;
end else
SeSkinProgressBar1.Position := 0;
end;
Vejam se isso ajuda...
ProgressMax: Integer);
begin
if Progress > 0 then begin
SeSkinProgressBar1.Max := ProgressMax;
SeSkinProgressBar1.Position := Progress;
end else
SeSkinProgressBar1.Position := 0;
end;
Vejam se isso ajuda...
GOSTEI 0
Stutz
17/02/2004
Pessoal, eu só quero fazer com que os botões e as funções fiquem voltadas para o TWebBrowser que estiver na Tab ativa do PageControl... acho que é simples...
GOSTEI 0