- - PR -
WebBrowserクラスでMouseClickイベントを使いたいのですが
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-03-15 09:39
WebBrowserコントロールを利用して簡易ブラウザを作成中です WindowsFormにコントロールを貼り付けてWebページを表示したり 戻る、進むなどの処理はできるのですが、マウスに関するイベントが なかったのでいろいろと調べてみました http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.webbrowser(VS.80).aspx こちらのページにWebBrowserクラスと、WebBrowserBaseクラスの記述を見つけたので さっそく、構文を参考に、クラスを作成してみましたが。 ---------------------------------------------------------- Imports System.Runtime.InteropServices <ComVisibleAttribute(True)> _ <ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)> _ Public Class WebBrowser Inherits WebBrowserBase End Class ---------------------------------------------------------- Inherits WebBrowserBase の部分でエラーになります エラーメッセージは 「クラス 'System.Windows.Forms.WebBrowserBase' にはアクセス可能な 'Sub New' が含まれていません。 このクラスを継承できません。」 です ただ、MSDNのページを見ていると MouseClick等のイベントは、WebBrowserBaseから継承すると書いてあるので 継承の方法が間違っているのかと思い調べてみましたがInherits以外の情報は 見つけることができませんでした。 どのようにすれば、WebBrowserクラスからMouseClickイベントが利用できるように なるのでしょうか? | ||||||||||||
|
投稿日時: 2006-03-15 09:55
どうも、誤解されているように思います。 あれは「内部的にこう定義されてますよ」というもので、いわばメタデータのようなものです。 そのまま、WebBrowser クラスを使えばよろしいのではないかと思います。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-03-15 10:22
WebBrowser クラスが MouseClick の実装を WebBrowserBase から継承しているという事です。(WebBrowser が新規に作ったわけではない、という意味)
多分、WebBrowserBase のコンストラクタが Friend になっているため、同じアセンブリ内からしかコンストラクタを呼べませんということです。
MSDN にはこう書かれていますね。クリックがとれないのでしょうか? ヘルプの説明を WebBrowserBase から引っ張ったままで、説明自体が思いっきり間違っている気がするのですが…。 (本当にイベントとれないのかな?) _________________ 囚人のジレンマな日々 | ||||||||||||
|
投稿日時: 2006-03-15 12:49
HtmlDocument のマウスイベントを使う必要があるかと。 | ||||||||||||
|
投稿日時: 2006-03-15 17:39
みなさんレスありがとうございます。
いろいろと試してみましたが、WebBrowserクラスの候補には Mouse関連のイベントはありませんでした HongliangさんのレスのHtmlDocumentというのについて 調べてみたいと思います。 | ||||||||||||
|
投稿日時: 2006-03-15 18:43
バニラミントさん,こんばんは。
私もWebBrowserコントロールにマウス関係のイベントが欲しかったことがあり, その時にはWebBrowserコントロールをサブクラス化し,MouseDownイベントを 拡張しました。 下のアドレスにその時のことをまとめてあります。 よろしければ参考にしてください。 http://homepage1.nifty.com/yasunari/VB/VB2005/WebBrowserMouseDownEvent.htm ちなみに,第4・第5ボタンを戻る・進むに対応させる場合には下のアドレスを 参考にしてみてください。 http://homepage1.nifty.com/yasunari/VB/VB2005/WebBrowserWM_APPCOMMAND.htm [ メッセージ編集済み 編集者: YAS 編集日時 2006-03-15 19:09 ] | ||||||||||||
|
投稿日時: 2006-03-15 19:21
Webbrowser.Document.Click
| ||||||||||||
|
投稿日時: 2006-03-15 19:44
レスありがとうございました
早速リンク先を参考にためしてみたら 無事動きました。 本当にありがとうございました。 |
1