AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Webstite in Tabsheet Anzeigen

Ein Thema von Delbor · begonnen am 1. Sep 2025 · letzter Beitrag vom 2. Sep 2025
Antwort Antwort
Delbor
Online

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.199 Beiträge
 
Delphi 11 Alexandria
 
#1

Webstite in Tabsheet Anzeigen

  Alt 1. Sep 2025, 12:27
Hi zusammen

In einem Pagecontrol will ich auf jeweils einem eigenen Tabsheet eine bestimmte Website anzeigen. Das klaptt auch soweit fast gut, mit dem 'klitzekleinen' Fehler, dass die gewünschte Webseite auch angezeigt wird - allerdings nicht innerhalb des Tabsheets, sondern als 'eigenständiges' Fenster und ohne dass dabei meine Anwendung im Hintergrund sichtbar wäre.
Der bisherige Code:

Delphi-Quellcode:
procedure TOfficerAlexMain.Btn_CSSClick(Sender: TObject);
  var FireFox : String;
begin
  ShellExecute(0,'open', Pchar('FireFox.exe'), PChar('https:my.css.ch/home'), nil, SW_Hide);

  SetFireFoxParent(Sender);
end;

procedure TOfficerAlexMain.SetFireFoxParent(Sender: TObject);
  var aWnd : Hwnd; TbsFireFox: TTabsheet;
    WPM : TWindowPlacement;
begin
  aWnd:=FindWindow('https:my.css.ch/home',nil);
  if aWnd<>0 then begin
    Winapi.Windows.SetParent(awnd,TbsFireFox.Handle);
  end;
end;
Dabei macht schon ShellExecute genau das, was es tun soll und startet den Firefox mit der gewünschten Website. Allerdings als eigenes Fenster, und meine Anwendung ist im Hintergrund nicht zu sehen.

Was mache ich Falsch?

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.221 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Webstite in Tabsheet Anzeigen

  Alt 1. Sep 2025, 13:17
Ich würde stark davon abraten, fremde Prozesse in deinem Fenster zu hosten.

Lesestoff:
https://stackoverflow.com/questions/...another-proces

Entweder hat Firefox eine extra hierfür vorgesehene Integrationsmöglichkeit, oder du nimmst eine Komponente wie den TWebBrowser.
  Mit Zitat antworten Zitat
Delbor
Online

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.199 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Webstite in Tabsheet Anzeigen

  Alt 1. Sep 2025, 14:37
Hi der schöne Günther

Zitat:
Ich würde stark davon abraten, fremde Prozesse in deinem Fenster zu hosten.

Lesestoff:
https://stackoverflow.com/questions/...another-proces

Entweder hat Firefox eine extra hierfür vorgesehene Integrationsmöglichkeit, oder du nimmst eine Komponente wie den TWebBrowser.
Der Sinn der FireFox-Exe auf einem Tabsheet ist die erleichterte Erreicharkeit derselben aus meinem Programm heraus. Die angezeigte Webseite soll durchsucht werden und Dateien hoch-bezw. Heruntergeladen werden können. Die entsprechenden Mechanismen stellt dabei die Website bereit.

Klar könnte ich erst eine dieser Seiten 'normal' aufrufen - so, wie ich das sehe, müsste ich vieles 'von Hand' und mehrfach machen, das per Code viel schneller und sicherer erledigt werden kann.

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.693 Beiträge
 
Delphi 12 Athens
 
#4

AW: Webstite in Tabsheet Anzeigen

  Alt 1. Sep 2025, 15:19
Und wenn Firefox was umbaut, funktioniert nichts mehr.

Geil z.B., wenn es nicht im neuen Fenster aufgeht, sondern im neuen Tab, weil der User es so eingestellt hat.
(er freut sich bestimmt, wenn du ihm das komplette Fenster klaust)

Delphi-Referenz durchsuchenTWebBrowser ist ein Edge in deinem Programm (früher ein InternetExplorer), bzw. inzwischen direkt Delphi-Referenz durchsuchenTEdgeBrowser,
aber es gibt z.B. auch Bei Google suchenCEF4Delphi (Chromium Embedded Framework, bzw, Chromium Based WebView Component), also die Chrome-Browser-Engine.

Und schau mal in die Demos
C:\Users\Public\Documents\Embarcadero\Studio\23.0\Samples\Object Pascal\VCL\WebBrowser

PS: Wer die Delphi-Demos nicht installiert hat, der findet die auch online
https://github.com/Embarcadero/RADSt...VCL/WebBrowser
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 1. Sep 2025 um 15:26 Uhr)
  Mit Zitat antworten Zitat
Delbor
Online

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.199 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Webstite in Tabsheet Anzeigen

  Alt Gestern, 09:58
Hi zusammen

Die Fehlermeldung:
Zitat:
---------------------------
GExperts Debugger Exception Notification
---------------------------
Project OfficerAlexProject.exe raised exception class EAccessViolation with message 'Access violation at address 009B274B. Read of address 000004A8'.
---------------------------
[&Filter ...] [Ignore &All this Session] [Break] [Additional &Info] [Continue]
---------------------------
Ich habe gestern abend eine TWebbroser-Komponente in mein Tabsheet eingefügt und gleich getestet. Das hat erstmal prächti funktioniert - ich konnte eine Combo-Box öffnen, mit der Dateien hochgeladen werden können und einiges mehr. Das funktioniert hute morgen nicht mehr. Der auslösende Code:
Delphi-Quellcode:
procedure TOfficerAlexMain.Btn_CSSClick(Sender: TObject);
begin
  WebBrowserCSS.Navigate2('https:my.css.ch/home');
end;
Nachdem ich gestern abend diesen Code eingefügt und die gewünschte Website mehrmals anzeigen konnte, fügte ich einen weiteren TWebbrowser hinzu,der allerdings eine andere Webseite anzeigen soll. Mit dem zweiten Webbrowser will ich erreichen, dass ich zur gleichen Zeit 2 Webseiten geöffnet haben kann. Dieser zweite Webbroser liegt zur Zeit auf einem der Tabsheets und tut sonst nichts.
Was könnte die Ursache für obige Fehlermeldung sein?

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  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 18:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz