Announcement

Collapse
No announcement yet.

Probs mit Bsp./PopUp schließen/"nur" submit Funktion

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Probs mit Bsp./PopUp schließen/"nur" submit Funktion

    Hi!
    Ich habe die anderen Threads natürlich nicht übersehen. Bei dem Download Bsp. kommt bei mir immer der Fehler: VarIsEmpty nicht definiert oder so...
    Deswegen hab ich es mit... (quellcode folgt) versucht, jedoch weiß ich nicht wie ich das Formular abschicken kann. Zudem kommt ein nerviges JavaSkriptFehler Popup (bei einer WebSeite, hängt nicht am Progyy, wills aber schließen lassen)...

    unit Unit1;

    interface

    uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, OleCtrls, SHDocVw, StdCtrls, ComCtrls;

    type
    TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    Label1: TLabel;
    Button1: TButton;
    ProgressBar1: TProgressBar;
    procedure WebBrowser1DocumentComplete(Sender: TObject;
    const pDisp: IDispatch; var URL: OleVariant);
    procedure WebBrowser1ProgressChange(Sender: TObject; Progress,
    ProgressMax: Integer);
    procedure Button1Click(Sender: TObject);
    procedure WebBrowser1TitleChange(Sender: TObject;
    const Text: WideString);
    private
    { Private declarations }
    public
    { Public declarations }
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.dfm}

    function FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean;
    var
    i, j: Integer;
    FormItem: Variant;
    begin
    Result := False;

    if WebBrowser.OleObject.Document.all.tags('FORM').Len gth = 0 then
    begin
    Exit;
    end;

    for I := 0 to WebBrowser.OleObject.Document.forms.Length - 1 do
    begin
    FormItem := WebBrowser.OleObject.Document.forms.Item(I);
    for j := 0 to FormItem.Length - 1 do
    begin
    try
    if FormItem.Item(j).Name = FieldName then
    begin
    FormItem.Item(j).Value := Value;
    Result := True;
    end;
    except
    Exit;
    end;
    end;
    end;
    end;

    procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
    const pDisp: IDispatch; var URL: OleVariant);

    begin
    FillForm(WebBrowser1, 'vorname', 'x');
    FillForm(WebBrowser1, 'name', 'y');
    FillForm(WebBrowser1, 'strasse', 'z');
    FillForm(WebBrowser1, 'plz', '1');
    FillForm(WebBrowser1, 'stadt', '2');
    FillForm(WebBrowser1, 'land', '3');
    FillForm(WebBrowser1, 'email', '4');
    end;

    procedure TForm1.WebBrowser1ProgressChange(Sender: TObject; Progress,
    ProgressMax: Integer);
    begin
    if ProgressMax = 0 then
    begin
    Progressbar1.Position:=0;
    Exit;
    end;
    try
    if (Progress <> -1) and (Progress <= ProgressMax) then
    Progressbar1.Position:= (Progress * 100) div ProgressMax
    else
    Progressbar1.Position:=0;
    except
    on EDivByZero do Exit;
    end;
    end;

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Webbrowser1.Navigate('http://...');

    end;

    procedure TForm1.WebBrowser1TitleChange(Sender: TObject;
    const Text: WideString);
    begin
    Caption := Webbrowser1.OleObject.Document.Title;
    end;

    end.

    Bitte um Hilfe (am besten in den quellcode direkt reinposten, sonst verchecke ich es vielleicht noch).
Working...
X