AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Twebbrowser Onnewwindow2 Problem
Thema durchsuchen
Ansicht
Themen-Optionen

Twebbrowser Onnewwindow2 Problem

Ein Thema von dtrace · begonnen am 29. Aug 2007 · letzter Beitrag vom 29. Aug 2007
Antwort Antwort
dtrace

Registriert seit: 7. Jan 2003
Ort: Gevelsberg
94 Beiträge
 
Delphi 2006 Enterprise
 
#1

Twebbrowser Onnewwindow2 Problem

  Alt 29. Aug 2007, 10:34
Hallo,
ich habe ein Problem. Und zwar arbeite ich gerade an meinem eigenem Webbrowser. Dieser Webbrowser unterstützt das Tabbing Browsing.

Zu meinm Problem: Es gibt z.B. Links auf Websites die im Firefox Browser in einem weiteren Tab angezeigt werden, dass funktioniert bei mir auch. Aber es gibt auch seiten, die nicht im Tab sondern in einem neuen Fenster aufgebaut werden...wie erkenne ich das. Denn bei mir kommt ein OLE Object Fehler.

hier mein Code

Delphi-Quellcode:
 procedure TFMain.WebBrowser1NewWindow2(ASender: TObject; var ppDisp: IDispatch;
  var Cancel: WordBool);

begin
if self.PopUpBlock then
begin
 ppDisp := nil;
 Cancel := true;
end else
begin
 try
   Cancel := false;
   NewTab('About:Blank','Zurfo - Web');
   tab.ActivePage.Show;
   Wb := GetCurrentWb; //ermitteln den aktiven Webbrowser Controll...
   

   WaitForBrowser(WB);
  
   ppdisp := WB.Application;
   WaitForBrowser(WB);


 except on E: Exception do begin end;

 end;


 end;
end;
Dennis van der Vlugt
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Twebbrowser Onnewwindow2 Problem

  Alt 29. Aug 2007, 10:45
Hallo,

bei mir würde das eher so aussehen:

Delphi-Quellcode:
begin
  // ...
  ppDisp := WB.DefaultDispatch;
  // ...
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
dtrace

Registriert seit: 7. Jan 2003
Ort: Gevelsberg
94 Beiträge
 
Delphi 2006 Enterprise
 
#3

Re: Twebbrowser Onnewwindow2 Problem

  Alt 29. Aug 2007, 10:50
Ich habe das jetzt so gemacht wie du,
bei mir wird jetzt im zweiten Tab ein Fenster angezeigt, wenn ich haber jetzt wieder auf das erste Tab klicke, kommt die Fehlermeldung: Could not obtain OLE Control Window handle
Dennis van der Vlugt
  Mit Zitat antworten Zitat
dtrace

Registriert seit: 7. Jan 2003
Ort: Gevelsberg
94 Beiträge
 
Delphi 2006 Enterprise
 
#4

Re: Twebbrowser Onnewwindow2 Problem

  Alt 29. Aug 2007, 11:16
Niemand eine Idee?
Dennis van der Vlugt
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: Twebbrowser Onnewwindow2 Problem

  Alt 29. Aug 2007, 12:29
Hallo Dennis,

der Fehler steckt bestimmt in dem Code, den du nicht zeigst. Zumindest kann ich den Fehler nicht nachstellen.

Freundliche Grüße
Angehängte Dateien
Dateityp: zip webtab_748.zip (3,1 KB, 15x aufgerufen)
  Mit Zitat antworten Zitat
dtrace

Registriert seit: 7. Jan 2003
Ort: Gevelsberg
94 Beiträge
 
Delphi 2006 Enterprise
 
#6

Re: Twebbrowser Onnewwindow2 Problem

  Alt 29. Aug 2007, 13:05
Also hier ist der Code um ein neues Tab zu erstellen:

Delphi-Quellcode:
procedure TFMain.NewTab(URL, Caption: String);
 var //WB: TWebbrowser;
     TS: TadvOfficePage;//TTabExtsheet;
     BT: TTeSpeedButton;
     PA: TTePanel;
     LA: TTeLabel;
     CB: TTecheckbox;
begin


  Tab.AddAdvPage(Caption);
  Tab.ActivePageIndex := tab.AdvPageCount-1;
  TS := Tab.ActivePage;

  TS.Parent := Tab;

  TS.Caption := Caption;


   Tab.ActivePage := TS;

   WB := TEmbeddedWB.Create(ts);


   //setze Webbrowser in Tabsheet
   TControl(WB).Parent := TS;

hier ist die Methode um den aktuellen Browser-Controll zu ermitteln:

Delphi-Quellcode:
function TFMain.getCurrentWB: TEmbeddedWB;
begin

  Result := nil;
  with Tab do
    if ActivePage.ControlCount > 0 then
    begin
      if ActivePage.Controls[0] is TEmbeddedWB then
      begin
        Result := (TEmbeddedWB(ActivePage.Controls[0]));
      end else
        Result := Webbrowser1;
    end;
end;
Dennis van der Vlugt
  Mit Zitat antworten Zitat
dtrace

Registriert seit: 7. Jan 2003
Ort: Gevelsberg
94 Beiträge
 
Delphi 2006 Enterprise
 
#7

Re: Twebbrowser Onnewwindow2 Problem

  Alt 29. Aug 2007, 13:06
var WB: TembeddedWB habe ich als global deklariert.
Dennis van der Vlugt
  Mit Zitat antworten Zitat
dtrace

Registriert seit: 7. Jan 2003
Ort: Gevelsberg
94 Beiträge
 
Delphi 2006 Enterprise
 
#8

Re: Twebbrowser Onnewwindow2 Problem

  Alt 29. Aug 2007, 13:20
Mit deinem Demo Projekt kommt auch Die Fehlermeldung, sobald ich zwischen den Tabs wechsel.
Der Fehler tritt z.B. auf, wenn ich über die 1un1 Website eine Mail schreiben möchte oder wenn ich auf meine Bank "Comdirect" auf mein Konto gucken möchte
Dennis van der Vlugt
  Mit Zitat antworten Zitat
dtrace

Registriert seit: 7. Jan 2003
Ort: Gevelsberg
94 Beiträge
 
Delphi 2006 Enterprise
 
#9

Re: Twebbrowser Onnewwindow2 Problem

  Alt 29. Aug 2007, 13:41
Ich glaube das der TWebbrowser aus irgendeinem Grund zerstört wird...mehr weiß ich zur Zeit nicht
Dennis van der Vlugt
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz