![]() |
||||||
Voice Controlled Mouse:
![]() Main title Name: “Voice Interface” Project title Name: “Voice controlled Mouse” Developer: Md. Redwanur Rahman Location: Dhaka, Bangladesh. Date: 15 September, 2007 I am here to share knowledge with other. I am writing about voice interface project. The people who are computer engineer will get help from this project. Aim of this project: Using your voice you can control your mouse Code Details ‘Voice Command Form code…………………………… ‘Put this code in Voice command Form that named Main_1. Private Const VK_Return = &HD Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long) Private Sub Form_Load() Form1.Show Dim FileN As String FileN = App.Path & "command.txt" SR.Deactivate SR.GrammarFromFile FileN SR.Activate SR.AutoGain = 99 CMD_List End Sub Private Sub SR_PhraseFinish(ByVal flags As Long, ByVal beginhi As Long, ByVal beginlo As Long, ByVal endhi As Long, ByVal endlo As Long, ByVal Phrase As String, ByVal parsed As String, ByVal results As Long) Debug.Print Phrase If Trim(Phrase) = "" Then Exit Sub Else Text2.Text = Trim(Phrase) SelMSG (Phrase) Process_Message (Trim(Phrase)) End If End Sub Function Process_Message(Msg As String) Select Case (UCase(Msg)) Case ("UP") Form1.Command2_Click Case ("DOWN") Form1.Command5_Click Case ("LEFT") Form1.Command4_Click Case ("RIGHT") Form1.Command1_Click Case ("NORMAL") Form1.Command3_Click Case ("CLICK") keybd_event VK_Return, 0, 0, 0 keybd_event VK_Return, 0, KEYEVENTF_KEYUP, 0 Case ("EXIT") End End Select End Function Function CMD_List() Dim TxT As String, Temp As String Open App.Path & "commands.txt" For Input As #1 Do Until EOF(1) Line Input #1, TxT Temp = Left(TxT, ![]() If Temp = "S=" Then TxT = Mid(TxT, 9, Len(TxT)) List1.AddItem TxT End If Loop Close #1 End Function Function SelMSG(Msg As String) Dim Temp As String Dim i As Integer For i = 0 To List1.ListCount Temp = List1.List(i) If Trim(UCase(Temp)) = Trim(UCase(Msg)) Then List1.ListIndex = i Exit Function End If Next End Function ‘Cursor controller Form code……. ‘Put this code in Cursor Form that named Form1. Private Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal Y As Long) As Long Dim X, Y As Integer Dim goRight, goUp, goDown, goLeft As Boolean Public Sub Command1_Click() Timer1.Enabled = True Timer2.Enabled = False Timer3.Enabled = False Timer4.Enabled = False End Sub Public Sub Command2_Click() Timer2.Enabled = True Timer1.Enabled = False Timer3.Enabled = False Timer4.Enabled = False End Sub Public Sub Command3_Click() Timer1.Enabled = False Timer2.Enabled = False Timer3.Enabled = False Timer4.Enabled = False End Sub Public Sub Command4_Click() Timer3.Enabled = True Timer1.Enabled = False Timer2.Enabled = False Timer4.Enabled = False End Sub Public Sub Command5_Click() Timer4.Enabled = True Timer1.Enabled = False Timer2.Enabled = False Timer3.Enabled = False End Sub Private Sub Form_Load() X = Form1.Width / 8 - 0.25 Text1.Text = X Y = Form1.Height / 8 Text2.Text = Y SetCursorPos X, Y End Sub Private Sub Timer1_Timer() 'If X <= 0 Then goLeft = True 'If goLeft Then X = X + 1 Text1.Text = X 'End If SetCursorPos X, Y End Sub Private Sub Timer2_Timer() 'If Y <= 0 Then goUp = False 'If goUp Then Y = Y - 1 Text2.Text = Y 'End If SetCursorPos X, Y End Sub Private Sub Timer3_Timer() 'If X >= 1024 Then goRight = True 'If goRight Then X = X - 1 Text1.Text = X 'End If SetCursorPos X, Y End Sub Private Sub Timer4_Timer() 'If Y >= 786 Then goDown = True 'If goDown Then Y = Y + 1 Text2.Text = Y 'End If SetCursorPos X, Y End Sub ‘Command.txt file………… save as a text file and put in program root directory. [Grammer] Type=Cfg [S] S=Left S=Right S=Up S=Down S=Normal S=Click S=Exit Download this Project. Conclusion: I developed this software that published in Cnews in Bangladesh. I am regular writer of Cnews, Computer Gajat and Computer tomorrow that’s monthly computer journal of Bangladesh. |
![]() |