掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
HTMLドキュメントの<FORM>要素を取得するには? (ID:20831)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
やっとことはありませんが、できるんじゃないでしょうか。 ただインターフェースがしっかり書かれていないと、動くものも動かないというところなんではないかと。 Delphi標準のってなんか省略されてるような印象を受けるんですが 真偽のほどは定かでありません。 (使ったことはあります。きちんと期待通り動きますが そこまで細かい制御はやったことないんで) ちなみに pascalは、 >OleVariant(Document as IHTMLDocument2).FORM名.SELECT名.options[index].text のような FORM名やSELECT名といった書き方は、認識できませんので(実行時まで分からないから) このような場合、文字列でパラメータを渡してリターンがそのオブジェクトであるような関数が存在すればよいわけです。 MSDN http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/mshtml/reference/ifaces/document2/document2.asp http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/mshtml/reference/ifaces/document2/get_forms.asp をみると forms というメソッドだかオブジェクトだかわかりませんが、あることはありますね。 さらにググってみると http://jacky1936.cndev.org/ というサイトに興味深い内容が書いてあります。 ちょっと読めませんが、ソースの部分はなんとか読めると思います。 私なりに解釈してみると var Form: IHTMLFormElement; Doc: IHTMLDocument2 ; begin with WebBrowser1 do begin Doc:= Document as IHTMLDocument2; //これでフォームオブジェクトにアクセスできるのか? Form:= Doc.Forms.item('form_name',0) as IHTMLFormElement; //INPUT TYPE=TEXT などの事と思う (Form.item('login',0) as IHTMLElement).setAttribute('value', Edit1.Text,0); (Form.item('password',0) as IHTMLElement).setAttribute('value', Edit2.Text,0); //(setがあるなら getAttributeもあるかもしれない) //Javascriptで form.submitとかとやった場合と同じようになるんでしょうか Form.submit; //INPUT TYPE=SUBMIT かな (Form.item('.save',0) as IHTMLElement).click; end; end; のように sumitやらclickもできそうなんですが またもや真偽のほどは定かでありません。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.