タイトル | : Re: マウスを移動させた場所で右クリックしたいです |
記事No | : 6511 |
投稿日 | : 2007/11/07(Wed) 21:34 |
投稿者 | : 高校教師 |
Public Class Form1 Dim WithEvents Speech As SKSpeechLib.SKSpeech '音声認識するための行 Dim ieTarget As Object 'ブラウザをオブジェクト化 'マウスを擬似的に動作させる(P1044) Private Declare Sub mouse_event Lib "user32" _ (ByVal dwFlags As Long, ByVal dx As Long, _ ByVal dy As Long, ByVal cButtons As Long, _ ByVal dwExtraInfo As Long) 'Private MoP As POINTAPI '現在のマウスポインタの位置座標 Private Const MOUSE_MOVED = &H1 Private Const MOUSEEVENTF_ABSOLUTE = &H8000& ' absolute move Private Const MOUSEEVENTF_LEFTUP = &H4 '左ボタンUP Private Const MOUSEEVENTF_LEFTDOWN = &H2 '左ボタンDown Private Const MOUSEEVENTF_MIDDLEDOWN = &H20 '中央ボタンDown Private Const MOUSEEVENTF_MIDDLEUP = &H40 '中央ボタンUP Private Const MOUSEEVENTF_RIGHTDOWN = &H8 '右ボタンDown Private Const MOUSEEVENTF_RIGHTUP = &H10 '右ボタンUP Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Speech = New SKSpeechLib.SKSpeech("C:\ronbun\kaigorobo\SpeechGrammer.xml") '@で宣言したものを利用できるようにしている Speech.Enabled = True 'ここがTrueであれば音声認識する偽であれば認識しい 'マウスを左上に移動させる Windows.Forms.Cursor.Position = New Point(0, 0) End Sub Private Sub SKSpeechRecognitionEventHandler(ByVal sender As Object, _ ByVal torikomionsei As SKSpeechLib.SKSpeechEventArgs) _Handles Speech.Recognition ここでマウスを右クリックする Call mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0) 'ここに使用したい命令を記入する If torikomionsei.Words(0) = "kaisi" Then CheckBox1.Checked = True End If If torikomionsei.Words(0) = "owari" Then TextBox1.Text = torikomionsei.Words(0) CheckBox1.Checked = False ieTarget.application.quit() 'ブラウザを閉じる ieTarget.Visible = Nothing End If If CheckBox1.Checked = True Then TextBox1.Text = torikomionsei.Words(0) Case "TV" If Check1.Checked = True Then Check1.Checked = False Else Check1.Checked = True Windows.Forms.Cursor.Position = New Point(100, 100) Call mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0) End If Case "mous" If mous.Checked = True Then mous.Checked = False
Else mous.Checked = True 'マウス位置の取得 Dim X As Integer Dim Y As Integer Dim Pos As Point = Windows.Forms.Cursor.Position X = Pos.X Y = Pos.Y Label2.Text = X & ", " & Y End If End Select End If End Sub End Class
ながくなりました、どこが悪いのかをおしえてください。お願いします。
|