AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Frage zu Dokument-höhe im TWebBrowser

Frage zu Dokument-höhe im TWebBrowser

Ein Thema von Svenkan · begonnen am 6. Nov 2008 · letzter Beitrag vom 13. Nov 2008
Antwort Antwort
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#1

Frage zu Dokument-höhe im TWebBrowser

  Alt 6. Nov 2008, 22:23
Hallo Leute!
Ich wollte eine HTML-Datei scrollen lassen und sobald das Ende erreicht ist, soll diese wieder von oben anfangen zu scrollen.

Folgende Testprozedur habe ich:

Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  WebBrowser1.OleObject.Document.ParentWindow.ScrollTo(0,browser_y);

  if NOT (browser_y+1>WebBrowser1.OleObject.Document.Body.ScrollHeight) then
    browser_y:=browser_y+1
  else if (browser_y=WebBrowser1.OleObject.Document.Body.ScrollHeight) then
    browser_y:=0
  else
    browser_y:=WebBrowser1.OleObject.Document.Body.ScrollHeight;

  Label3.Caption:=IntToStr(WebBrowser1.OleObject.Document.Body.ScrollHeight);
  Label4.Caption:=IntToStr(browser_y);

   Timer1.Interval:=50;
end;

Das Problem ist, dass die Scrollhöhe leider nicht das gewünschte Ergebnis liefert, da diese leider nicht das genaue Ende des Scrollens angibt. Ich möchte aber, sobald die Scrollbar das untere Ende erreicht hat, dass diese wieder direkt nach oben springen soll!
Hat dort jemand eine Idee?
Sven Kannenberg
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#2

Re: Frage zu Dokument-höhe im TWebBrowser

  Alt 8. Nov 2008, 08:03
Hallo,

Ist schon etwas seltsam..

Workaround:

- Aktuelle Y-Position der Scrollbar ermitteln
- ScrollTo(..)
- Neue Y-Position der Scrollbar ermitteln

Falls Aktuelle <> Neue dann ganz nach oben scrollen.


Zum Ermitteln der Scrollbar-Positionen kannst du diese Funktion verwenden: WB_GetScrollPosition
(Mit evtl. Anpassung an deine Bedürfnisse)
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#3

Re: Frage zu Dokument-höhe im TWebBrowser

  Alt 11. Nov 2008, 19:56
Hast du schon ein Lösung gefunden resp. funktioniert mein Vorschlag?
Thomas
  Mit Zitat antworten Zitat
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Frage zu Dokument-höhe im TWebBrowser

  Alt 12. Nov 2008, 21:36
Hallo toms,

ich bin bis gerade noch nicht zum ruhigen Lesen gekommen, da ich momentan einigermaßen unter Stress stehe.
Wenn ich mir das so durchlese, dann finde ich das eher seltsam. Aktuelle <> Neue ist doch schon, nachdem ich nur einen runtergescrollt bin?
Nach oben gescrollt werden soll aber erst, nachdem ich GANZ UNTEN angekommen bin.
Sven Kannenberg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Frage zu Dokument-höhe im TWebBrowser

  Alt 12. Nov 2008, 21:46
dann versuch's mal so
if Aktuelle = Neue then ScrollWiederHoch;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Frage zu Dokument-höhe im TWebBrowser

  Alt 12. Nov 2008, 22:38
Ich verstehe nicht so ganz, was ihr mit aktuell und Neu wollt. Weil es wird mehr als einmal gescrollt (nämlich alle 50ms um 1px nach unten!). Es ist ja nunmal so, dass mir der max. Wert fehlt.
Sven Kannenberg
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#7

Re: Frage zu Dokument-höhe im TWebBrowser

  Alt 12. Nov 2008, 23:10
Die Idee ist, nicht zu prüfen, ob du die maximale Höhe erreicht hast, sondern ob das Scrolling nach unten überhaupt ausgeführt wurde - denn wenn du bereits unten bist, tut der Borwser ja nix mehr und die Position bleibt gleich.
  Mit Zitat antworten Zitat
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Frage zu Dokument-höhe im TWebBrowser

  Alt 13. Nov 2008, 00:06
Ja ok, nach 48h ohne Schlaf ist das Denken nicht mehr sehr einfach.
Aber nun funktionierts.^^ Dankeschön und gute Nacht^^
Sven Kannenberg
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#9

Re: Frage zu Dokument-höhe im TWebBrowser

  Alt 13. Nov 2008, 08:36
Zitat von himitsu:
dann versuch's mal so
if Aktuelle = Neue then ScrollWiederHoch;
Sorry, das hatte ich eigentlich auch gemeint nur getippt...
(Vielleicht war es aber auch Absicht?!? )
Thomas
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 14:30 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