![]() |
Re: POST Formular ausfüllen + Werte ablesen
Ich habe noch eine abschließende Frage.
Und zwar funzt das nicht mehr mit dem Werte Eintragen. Grund: Ein Einhabefeld des Formulars ist eine "textarea", also was man mit dem Memo von Delphi vergleichen könnte. Jedenfalls meckert Delphi immer, wenn ich versuche, einen Text aus einem Memo in die textarea einzutragen. Habe ich etwas falsch gemacht, bzw muss ich etwas ändern :gruebel: Zum Ausfüllen der Felder habe ich die von mir oben genannte prozedur benutzt. Ahh bitte helft mir :wall: |
Re: POST Formular ausfüllen + Werte ablesen
Zitat:
Delphi-Quellcode:
function WB_SetFormValue(WB: TWebbrowser; FieldName, sValue: string): string;
var iForms, iItems: Integer; FormItem: OleVariant; begin Result := ''; for iForms := 0 to WB.OleObject.Document.forms.Length - 1 do begin FormItem := WB.OleObject.Document.forms.Item(iForms); for iItems := 0 to FormItem.Length - 1 do begin try if SameText(FormItem.Item(iItems).Name, FieldName) then begin FormItem.Item(iItems).Value := sValue; end; except end; end; end; end; |
Re: POST Formular ausfüllen + Werte ablesen
Ok Vielen Dank.
Ich hatte in letzter Zeit viel zu tun und konnte die Methode erst jetzt testen. Mir ist noch aufgefallen, dass der Wert, den ich mit der Methode "WB_GetFieldValue" überprüfen möchte ebenfalls in einer "Textarea" gespeichert ist. Und wie schon gesagt, vertragen sich diese Methoden nicht mit einem "Textarea"-Feld. Ich habe versucht, deine Methode so umzuschreiben, dass ich sie in einer Verzweigung aufrufen kann, aber es kamen Fehler über Fehler (ich bin auch noch ein Neuling in Sachen Delphi-Programmierung :oops: ). Aber ich denke, wenn ich das jetzt hinbekommen würde, hätte ich keine weiteren Fragen mehr zu diesem Thema :stupid: Ich danke schon mal im Voraus :thumb: |
Re: POST Formular ausfüllen + Werte ablesen
Hallo, was hindert dich daran, WB_SetFormValue in WB_GetFormValue umzuschreiben?
Delphi-Quellcode:
function WB_GetFormValue3(WB: TWebbrowser; FieldName: string): string;
var iForms, iItems: Integer; FormItem: OleVariant; begin Result := ''; for iForms := 0 to WB.OleObject.Document.forms.Length - 1 do begin FormItem := WB.OleObject.Document.forms.Item(iForms); for iItems := 0 to FormItem.Length - 1 do begin try if SameText(FormItem.Item(iItems).Name, FieldName) then begin Result := FormItem.Item(iItems).Value; end; except end; end; end; end; |
Re: POST Formular ausfüllen + Werte ablesen
Hallo. Danke. Ich konnte das nicht selbst umwandeln, weil ich eigentlich noch ein Neuling bin, habe es aber versucht, mir wurden dabei jedoch immer wieder Fehler angezeigt :wall: aber jetzt klappts ja zum Glück :-D
Abschließend habe ich aber noch ein aller letztes Problem: Das absenden des Formulars. Ich habe die SuFu hier im Forum benutzt und bin auf folgenden Code gestoßen:
Delphi-Quellcode:
Ich habe ihn getestet, er funktioniert auch: Nur leider im falschen Formular.
WebBrowser.OleObject.document.forms.item(1).submit;
Auf der Seite befinden sich 2 Formulare: Eine Suchmaschine (am oberigen Rand) und das SMS-Formular. (Das Formular wird im Quelltext eher aufgerufen als das SMS-Formular). Es wird immer wieder der Button des Suchmaschinen-Formulars aktiviert. Beim SMS Formuar gibt es wiederum wieder 2 Buttons (Senden, Reset). Gibt es vielleicht irgendeine Möglichkeit, das Formular "zu wechseln" und den "senden" Button anzuklicken. Ich habe schon probiert, den Integer Wert, der bei "item" in Klammern steht zu ändern, Ich dachte, die Buttons wären in einer Art aufzählung gegliedert, z.B. Suchmaschine "Suchen" = 0. SMS-Senden "Senden" = 1. SMS-Senden "Reset" = 2. Leider ohne erfolg. Denn wenn ich den Wert 1 genommen habe, hat sich nichts getan und beim Versuch den Wert 2 zu benutzen, wurde mir eine Fehlermeldung angezeigt. Ansonsten kann ich sagen, dass mein Programm bis dahin (dank deiner Hilfe) ziemlich gut läuft. :cheers: |
Re: POST Formular ausfüllen + Werte ablesen
Hallo, Google mal nach
![]() |
Re: POST Formular ausfüllen + Werte ablesen
Dankeschön, jetzt funktioniert mein Programm endlich.
Vielen lieben Dank für all deine Mühe!!! :balloon: :dancer2: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:48 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