Entwickler-Ecke

Internet / Netzwerk - Wie drücke ich den Button auf einer Webseite?


BingoBongo - Sa 30.06.07 22:55
Titel: Wie drücke ich den Button auf einer Webseite?
Hallo,
ich brauche einen Tipp, wie ich den Button auf einer Webseite, die mir als html Datei auf meiner Festplatte vorliegt mit "Delphi-Hilfe" klicken kann, so dass die entsprechende Aktion, in meinem Fall das Laden einer weiteren Webseite durchgeführt wird.
Ich habe zwar den 'input type="submit" name="blabla" value="jetzt" ' in dem html Quelltext stehen, weiß aber leider nicht, wie ich diesen Button mit Delphi drücken kann und dann auch noch die dadurch aufgerufene html-Seite auf die Platte bekomme.

Für den einen oder andern Tipp wäre ich sehr dankbar.
Ach ja, ich nutze D7 Enterprise.

Bingo


jome - Mo 16.07.07 21:10

Hallo,
die Lösung steht hier http://www.delphi-library.de/topic_mit+Feldern+und+Buttons+im+Webbrowser+arbeiten_8482.html.

oder diese Funktionen tun es auch:



Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
USES
 ActiveX, SHDocVw;

function FillWebBrowserForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): boolean;
var
    I, j            : integer;
    FormItem        : Variant;
begin
    Result := false;
    if WebBrowser.OleObject.Document.all.tags('FORM').Length = 0 then
        exit;

    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 uppercase(FormItem.Item(j).Name) = uppercase(FieldName) then
                            begin
                                FormItem.Item(j).Value := Value;
                                Result := True;
                                exit;
                            end;
                    except exit;
                    end;
                end;
        end;
end;

function PressWebBrowserButton(WebBrowser: TWebBrowser; const ButtonName: string): boolean;
var
    I, j            : integer;
    FormItem        : Variant;
begin
    Result := false;
    if WebBrowser.OleObject.Document.all.tags('FORM').Length = 0 then exit;
    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 = ButtonName then
                            begin
                                FormItem.Item(j).click;
                                Result := True;
                                exit;
                            end;
                    except exit;
                    end;
                end;
        end;
end;