たびたび質問させていただきます。JJJです。
前回、「 ドラッグした文字を自動的にTextBoxにいれるには 」という質問で解決に言ったたのですが、マウスホバー機能を用いてもWebBroweserでマウスポイントで触れた文字をTextBoxに文字を1文字ごと、または1文ごとにTextBoxに文字を入れるように出来るのでしょうか。
現在、マウスホバー機能と、WebBroweserについて調べているのですが、本などでは、マウスホバーについては記述が少なく苦戦しています。
どうか、お力添えをお願い致します。
> 前回、「 ドラッグした文字を自動的にTextBoxにいれるには 」という質問で解決に言ったたのですが
これの事でしょうか?
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200610/06100044.txt
> 1文ごとにTextBoxに文字を入れるように出来るのでしょうか。
Imports System.Runtime.InteropServices.Marshal
Public Class Form1
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
WebBrowser1.Navigate("http://www.google.co.jp/")
End Sub
Private Sub WebBrowser1_DocumentCompleted(ByVal sender As Object, ByVal e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
WebBrowser1.Document.AttachEventHandler("onmouseover", AddressOf document_onmouseover)
End Sub
Sub document_onmouseover(ByVal sender As Object, ByVal e As EventArgs)
TextBox1.Text = WebBrowser1.Document.GetElementFromPoint(MousePosition).InnerText
End Sub
End Class
おっと、間違い。
> TextBox1.Text = WebBrowser1.Document.GetElementFromPoint(MousePosition).InnerText
TextBox1.Text = WebBrowser1.Document.GetElementFromPoint(WebBrowser1.PointToClient(Control.MousePosition)).InnerText
魔界の仮面弁士さん、ありがとうございます。
ほぼ思ったとおりの、ことが出来ました。
しかし、WebBrowserの空白部分でも、文字を読み取ってしまう問題があったので、自分なりに考えてマウスカーソルの形が変わった際に文を読み込むようにしたいのですが、if文の使い方がおかしいのか、上手く作動しません。
通常の矢印から、テキストやリンクにマウスカーソルを移動した際に別の形になったときに作動するようにしたかったのですが
Sub document_onmouseover(ByVal sender As Object, ByVal e As EventArgs)
If Me.Cursor = Cursors.Default Then
Else
TextBox1.Text = WebBrowser1.Document.GetElementFromPoint(WebBrowser1.PointToClient(Control.MousePosition)).InnerText
End If
End Sub
上記のように考えたのですが、作動しませんでした。
お手数が、お力添え願います。
魔界の仮面弁士さん
ありがとう、ございました。
問題が、解決いたしました!
ツイート | ![]() |