WebBrowser上のフォーカスのあるリンク先URLを取得するには?

解決


赤ペン  2004-12-02 22:31:14  No: 117971  IP: [192.*.*.*]

WebBrowserコントロールに表示されているHTMLコンテンツ内でフォーカスのあるハイパーリンクのリンク先を取得するにはどうしたらよいのでしょうか?

編集 削除
検索  2004-12-03 16:55:45  No: 117972  IP: [192.*.*.*]

http://madia.world.coocan.jp/cgi-bin/VBBBS/wwwlng.cgi?print+200211/02110016.txt

編集 削除
赤ペン  2004-12-04 10:40:20  No: 117973  IP: [192.*.*.*]

ご返答ありがとうございます。
今、私は盲目の人用のブラウザーを作成していて。
キーボードのタブキーでフォーカスを移動させ、フォーカスのあるテキストとリンク先URLを音声にて伝えたいのですが・・・。
検索さんに教えて頂いたアドレスを拝見したのですが、いまいちよくわかりません。

編集 削除
魔界の仮面弁士  2004-12-04 23:46:38  No: 117974  IP: [192.*.*.*]

> 今、私は盲目の人用のブラウザーを作成していて。
ならば是非、Microsoft Active Accessibility SDK を読んでおきましょう。
MSHTML でも、IAccessible インターフェイスがサポートされていたと思いますし。
http://www.microsoft.com/japan/msdn/accessibility/msaa/default.asp
http://www.microsoft.com/downloads/details.aspx?FamilyId=9B14F6E1-888A-4F1D-B1A1-DA08EE4077DF&displaylang=en


> 検索さんに教えて頂いたアドレスを拝見したのですが、いまいちよくわかりません。
# あのサンプルの意味がわからないとなると、ちと道が険しいかも……。(汗)
とりあえず、DHTMLについて勉強してみてください。

提示のサンプルは、Aエレメント(anchorオブジェクト)を列挙し、
その内側のテキストをinnerTextプロパティで、リンク先をhrefプロパティで
取得しています。Aエレメントの仕様については、下記を参照してみてください。
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/a.asp

で。

選択されたテキスト範囲については、selectionオブジェクトを使えます。
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_selection.asp
そこから、textRangeオブジェクトを取得していってください。


フォーカスのある要素に関しては、activeElementプロパティが使えるでしょう。
http://msdn.microsoft.com/workshop/author/dhtml/reference/properties/activeelement.asp
フォーカスのある要素の種類を調べて、それがanchorオブジェクトだった場合に、
先のサンプルのようにして、href/innerTextを取得すれば良いかと思います。

編集 削除
赤ペン  2004-12-05 09:15:23  No: 117975  IP: [192.*.*.*]

魔界の仮面弁士さん的確な回答ありがとうございます。
activeElemenなんですね。

編集 削除