AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Ein Wort in WebBrowser ändern : webbrowser1.items(6):= 'Hi'
Thema durchsuchen
Ansicht
Themen-Optionen

Ein Wort in WebBrowser ändern : webbrowser1.items(6):= 'Hi'

Ein Thema von taktaky · begonnen am 12. Sep 2007 · letzter Beitrag vom 13. Sep 2007
Antwort Antwort
Seite 1 von 2  1 2      
taktaky
(Gast)

n/a Beiträge
 
#1

Ein Wort in WebBrowser ändern : webbrowser1.items(6):= 'Hi'

  Alt 12. Sep 2007, 19:44
Ich habe auch auf Form einen WebBrowser1

Quelltext in Webbrowser1:
Delphi-Quellcode:
<html>
<head>
<title>test</title>
</head>
<body>


<font size="7">
Hallo1</font></p>
</body>
</html>
Die html ist natürlich ein Teil vom Programm und nicht eine externe Datei in Web

Ich habe versucht die Zeille 6 im Code das Wort hallo1 mit hallo2 so zu ersetzen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
webbrowser1.items(6):= 'Hallo2</font></p>';// hat leider nicht funktioniert !!!
end;
end
Hat jemand eine Idee?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Ein Wort in WebBrowser ändern : webbrowser1.items(6):= '

  Alt 12. Sep 2007, 19:57
"Hat leider nicht funktioniert...", diese Fehlermeldung hab ich als Hotliner am Liebsten Was sagt denn der Compiler? Was steht auf dem Bildschirm (nun sag nicht: "Eine Blumenvase")?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#3

Re: Ein Wort in WebBrowser ändern : webbrowser1.items(6):= '

  Alt 12. Sep 2007, 20:02
Der Befehl existiert überhaupt nicht in Delphi
Der Delphi sagt : undeclared 'Items' !!!

also um einen Wert in WebBrowser zu ändern mache ich so :
WebBrowser1.OleObject.document.forms.item(0).elements.item('GesuchtesWort').value:='GewunschtesWort; Aber diesmal will ich nicht ein Wort sondern eine Zeile in Code ersetzen
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Ein Wort in WebBrowser ändern : webbrowser1.items(6):= '

  Alt 12. Sep 2007, 20:12
Da ich den TWebBrowser nie benutzt habe, kann ich auch nur mutmaßen, aber ich denke, Du versuchst an der völlig falschen Stelle, Deine Änderungen anzubringen. Und zwar müssen vermutlich diese Änderungen an der Datenquelle (also der HTML-Datei) und nicht am Ausgabemedium (dem Browser) vorgenommen werden.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#5

Re: Ein Wort in WebBrowser ändern : webbrowser1.items(6):= '

  Alt 12. Sep 2007, 21:05
Ja, der Code oben, kann nur die Webbrowser-Oberfläche zugreifen und ändern und nicht den html-Code

Und das was ich mit google gejagt :
Delphi-Quellcode:
// Beim Einsatz der TWebBrowser-Komponente kann man natürlich auch auf
//den HTML-Quellcode der angezeigten Seite zugreifen:
var htmlcode: string;
begin
  htmlcode:=WebBrowser1.OleObject.Document.Body.InnerHtml;


Ich werde versuchen
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#6

Re: Ein Wort in WebBrowser ändern : webbrowser1.items(6):= '

  Alt 12. Sep 2007, 21:37
Leider hilft der Code nicht viel
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#7

Re: Ein Wort in WebBrowser ändern : webbrowser1.items(6):= '

  Alt 12. Sep 2007, 21:40
Warum nicht? Pushen innerhalb von 30 Minuten
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#8

Re: Ein Wort in WebBrowser ändern : webbrowser1.items(6):= '

  Alt 12. Sep 2007, 23:32
Was schlägst Du vor?
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#9

Re: Ein Wort in WebBrowser ändern : webbrowser1.items(6):= '

  Alt 13. Sep 2007, 06:02
[OT]
Zitat:
Was schlägst Du vor?
Richtig cool wäre es, wenn du aufhören würdest, Programmieren zu wollen und man dich nie mehr irgendwo in nem Forum sehen würde - und selbst wenn dann hauptsächlich auf der Helferseite.

Wenn man mal so schaut, stellst du - sorry für die Direktheit - nur richtig strohdoofe Fragen, aber ich hab in KEINEM Forum gesehen, dass du auch nur irgendwem einmal richtig konstruktiv geholfen hast.
[/OT]
  Mit Zitat antworten Zitat
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#10

Re: Ein Wort in WebBrowser ändern : webbrowser1.items(6):= '

  Alt 13. Sep 2007, 06:24
Zitat von Nuclear-Ping:
Richtig cool wäre es, wenn du aufhören würdest, Programmieren zu wollen und man dich nie mehr irgendwo in nem Forum sehen würde
@taktaky: Bitte verzeih ihm dieses Äußerung - wahrscheinlich musste er grad mitten im Programmieren Windows neu starten.

Zum Thema:
Mit dem Stückchen Code WebBrowser1.OleObject.Document.Body bist du der Lösung schon relativ nahe. Jetzt brauchst du nur noch folgendes Wissen:
Wie du sicherlich schon weißt, besteht ein HTML(XML)-Dokument hauptsächlich aus Eltern-Kind-Beziehungen. Diese werden auch in den Objekten (besser gesagt Interfaces) der TWebbrowser-Komponente abgebildet.
Im Klartext sieht könntest du das so nutzen (unit "mshtml" einbinden):
Delphi-Quellcode:
var
 Element : IHTMLElement;
 Children : IHTML
 idx : Integer;
begin
  Element:=WebBrowser1.OleObject.Document.Body as IHTMLElement;
  Children:=Element.Children as IHTMLElementCollection;

  for idx:=0 to Children.length-1 do
  begin
    Element:=Children.Item(idx, idx);
    //jetzt kannst du auf die Kind-Elemente zugreifen und z.B. Element.tagName prüfen
  end;
end;
Auf diese Weise könntest du bis zu dem Element navigieren, das du ändern möchtest. Wenn du es dann gefunden hast, kannst du Element.innerHTML neu beschreiben.
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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:46 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