zoukankan      html  css  js  c++  java
  • 偶也来模拟Delphi登陆网页

    这篇文章也不算是原创,毕竟参考了某位大牛代码,好了废话不说了直接代码了:

    登录前:

    登陆后:

    unit Unit1;

    interface

    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, OleCtrls, SHDocVw, UIWebBrowser, MSHtml, StdCtrls, WinSkinData,
      bsSkinData, BusinessSkinForm;

    type
      TForm1 = class(TForm)
        Label1: TLabel;
        Edit1: TEdit;
        Label2: TLabel;
        Edit2: TEdit;
        Button2: TButton;
        UIWebBrowser1: TUIWebBrowser;
        SkinData1: TSkinData;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;

    var
      Form1: TForm1;

    implementation

    {$R *.dfm}

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      //UiWebBrowser1.Navigate('http://localhost/User/Login.asp');
    end;

    procedure TForm1.Button2Click(Sender: TObject);
    var
      Doc: IHTMLDocument2;
      userinputelement, pwdinputelement: ihtmlinputelement;
    begin
      doc := UiWebBrowser1.document as ihtmldocument2;
      userinputelement := (doc.all.item('name', 0) as ihtmlinputelement);
      userinputelement.value := Trim(Edit1.Text);
      pwdinputelement := (doc.all.item('password', 0) as ihtmlinputelement);
      pwdinputelement.value := Trim(Edit2.Text);
    //  下面三种都可以,自己测试
      //按按钮名称来点击
      //wb1.OleObject.document.all.item('btnLogin').click;
      //按钮钮ID来点击
      // wb1.OleObject.document.getElementByID('btnLogin').click ;
      //按第几个按钮来点击
      //UiWebBrowser1.OleObject.document.getElementsByTagName('Input').item(4).click;
      UIWebBrowser1.OleObject.Document.all.item('submit').Click;
      Label1.Visible := False;
      Edit1.Visible := False;
      Label2.Visible := False;
      Edit2.Visible := False;
      Button2.Visible := False;
    end;


    procedure TForm1.FormCreate(Sender: TObject);
    begin
      UiWebBrowser1.Navigate('http://localhost/User/Login.asp');
    end;

    end.

  • 相关阅读:
    oc-多态
    swifit OC 混合开发注意
    KVC的底层实现原理
    如何解除循环引用
    Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable content-type: text/html" 的问题原因及解决方案
    什么是上下文(Context)???
    "this class is not key value coding-compliant for the key ..."问题的解决
    svn: Can't connect to host
    SpringMVC @SessionAttributes 使用详解以及源码分析
    spring学习之@ModelAttribute运用详解
  • 原文地址:https://www.cnblogs.com/spider518/p/1847534.html
Copyright © 2011-2022 走看看