AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi WebBrowser1.OleObject.document.forms.item(0).eleme nts.item('
Thema durchsuchen
Ansicht
Themen-Optionen

WebBrowser1.OleObject.document.forms.item(0).eleme nts.item('

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

n/a Beiträge
 
#1

WebBrowser1.OleObject.document.forms.item(0).eleme nts.item('

  Alt 15. Sep 2007, 10:03
Hallo,

ich möchte, bevor ich ein Feld ausfülle, zuerst überprüfen, ob das Feld überhaubt in Webbrowser existiert, damit ich keine Fehlermeldung erhalte.

Delphi-Quellcode:
if ??? then
WebBrowser1.OleObject.document.forms.item(0).elements.item('vorname').value:=Edit4.Text;
else
exit;
//Showmessage('blabla');
Was muss ich im Bereich ??? schreiben?

Oder einfach so :
if fileexists(WebBrowser1.OleObject.document.forms.item(0).elements.item('vorname').value)
  Mit Zitat antworten Zitat
marabu

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

Re: WebBrowser1.OleObject.document.forms.item(0).eleme nts.it

  Alt 15. Sep 2007, 10:22
Hallo,

ein nicht existierendes item ist null.

Bitte trage deine Delphi-Version in deinem DP-User-Profil ein.

OffTopic: Dein Deutsch wird immer besser, aber mit den Emoticons musst du etwas aufpassen: Weniger ist manchmal mehr.

Freundliche Grüße
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#3

Re: WebBrowser1.OleObject.document.forms.item(0).eleme nts.it

  Alt 15. Sep 2007, 10:47
Zitat von marabu:
ein nicht existierendes item ist null.
So habe ich ausprobiert:
Delphi-Quellcode:
if WebBrowser1.OleObject.document.forms.item(0).elements.item('vorname').value <> Null then
begin
WebBrowser1.OleObject.document.forms.item(0).elements.item('vorname').value :='x';
WebBrowser1.OleObject.document.forms.item(0).elements.item('nachname').value :='y';
end
else
exit;
end;
Leider hat es nicht geklappt !
  Mit Zitat antworten Zitat
marabu

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

Re: WebBrowser1.OleObject.document.forms.item(0).eleme nts.it

  Alt 15. Sep 2007, 10:59
Wenn du auf item.value zugreifst, dann musst du zuerst prüfen, ob item nicht null ist. Du prüfst value und ich hatte item geschrieben.
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#5

Re: WebBrowser1.OleObject.document.forms.item(0).eleme nts.it

  Alt 15. Sep 2007, 11:00
Eher so:

if WebBrowser1.OleObject.document.forms.item(0).elements.item('vorname') <> Null then Allerdings solltest du aufpassen, dass du auch auf das richtige "Null" prüfst, das sollte eine entsprechend vordefinierte Konstante sein (Entweder vom Variant generell, oder eine, die nur für den Webbrowser gilt).
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#6

Re: WebBrowser1.OleObject.document.forms.item(0).eleme nts.it

  Alt 15. Sep 2007, 11:14
Zitat von DGL-luke:
Eher so:

if WebBrowser1.OleObject.document.forms.item(0).elements.item('vorname') <> Null then Allerdings solltest du aufpassen, dass du auch auf das richtige "Null" prüfst, das sollte eine entsprechend vordefinierte Konstante sein (Entweder vom Variant generell, oder eine, die nur für den Webbrowser gilt).
Ich bekomme eine Fehlermeldung : Invalid variant Operation !!!

Alle Felder befinden sich im Webbrowser1 und nicht in Web. Aber wenn das Formular geschickt wird, wird eine Seite von der Webseite angezeigt (Als Bestätigung :Formular wurde geschickt).

Wenn aber der User wieder auf das Button anklickt, dann erscheint natürlich die Fehlermeldung, da kein Formular in Webbrowser gibt. Und dies möchte ich unbedingt vermeiden.
  Mit Zitat antworten Zitat
marabu

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

Re: WebBrowser1.OleObject.document.forms.item(0).eleme nts.it

  Alt 15. Sep 2007, 12:04
Unter diesen Umständen musst du natürlich bereits forms.item(0) auf null prüfen, da sonst der Zugriff auf item(0).elements zu dem beobachteten Zugriffsfehler führt.
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#8

Re: WebBrowser1.OleObject.document.forms.item(0).eleme nts.it

  Alt 15. Sep 2007, 12:19
Zitat von marabu:
Unter diesen Umständen musst du natürlich bereits forms.item(0) auf null prüfen, da sonst der Zugriff auf item(0).elements zu dem beobachteten Zugriffsfehler führt.
Und wie?

So habe ich versucht:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
if (WebBrowser1.OleObject.document.forms.item(0)<> Null) and
(WebBrowser1.OleObject.document.forms.item(0).elements.item('vorname') <> Null)
then
begin
WebBrowser1.OleObject.document.forms.item(0).elements.item('vorname').value:='x';
WebBrowser1.OleObject.document.forms.item(0).elements.item('nachname').value:='y';

end
else
exit;
end;


Ich bekomme immer die Fehlermeldung : Invalid variant Operation !!!




--
  Mit Zitat antworten Zitat
marabu

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

Re: WebBrowser1.OleObject.document.forms.item(0).eleme nts.it

  Alt 15. Sep 2007, 12:51
Den Test musst du mit der Funktion VarIsClear() durchführen.
  Mit Zitat antworten Zitat
taktaky
(Gast)

n/a Beiträge
 
#10

Re: WebBrowser1.OleObject.document.forms.item(0).eleme nts.it

  Alt 15. Sep 2007, 13:55
Zitat von marabu:
Den Test musst du mit der Funktion VarIsClear() durchführen.
Ich habe leider kein Beispiel über VarIsClear() in Forum gefunden.

Ich habe Eine andere Lösung (aber nicht ganz gut aber funktioniert):
Delphi-Quellcode:
procedure TForm1.Button5Click(Sender: TObject);
begin
WebBrowser1.OleObject.Document.Forms.item(0).submit;
Button1.Enabled:= false;
Button5.Enabled:= false;
Ich habe das Button "senden" in Webbrowser gelöscht und auf Form erstellen
Das Button "Senden" sendet das Formular und deaktiviert auch einige Buttons und sich selbst


Mit VarIsClear() wäre es vielleicht besser

gruß
  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 21:10 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