Marcos Remar Postado Fevereiro 26, 2008 Denunciar Share Postado Fevereiro 26, 2008 Olá pessoalEstou com mais uma dúvida gostaria de saber como posso fazer com que o vb pressione teclas, como se o programa estivesse digitando.desde já agradeço! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Fevereiro 26, 2008 Denunciar Share Postado Fevereiro 26, 2008 Usando a rotina SendKeys. Exemplo:Shell "Notepad", vbNormalFocus AppActivate "Sem Título - Bloco de notas" SendKeys "Isto é um teste{ENTER}" SendKeys "e mais outro teste{ENTER}"Certo? ;)Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcos Remar Postado Fevereiro 26, 2008 Autor Denunciar Share Postado Fevereiro 26, 2008 Usando a rotina SendKeys. Exemplo:Shell "Notepad", vbNormalFocus AppActivate "Sem Título - Bloco de notas" SendKeys "Isto é um teste{ENTER}" SendKeys "e mais outro teste{ENTER}"Certo? ;)GraymalkinMas e se por exemplo eu quiser chamar a tecla F11 ou ALT + F4? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Fevereiro 27, 2008 Denunciar Share Postado Fevereiro 27, 2008 Retirado do help do VB5:Para especificar caracteres que não são exibidos quando você pressiona uma tecla, como ENTER ou TAB, e teclas que representam ações em vez de caracteres, utilize os códigos a seguir. BACKSPACE{BACKSPACE}, {BS} ou {BKSP}BREAK{BREAK}CAPS LOCK{CAPSLOCK}DEL ou DELETE{DELETE} ou {DEL}SETA ABAIXO{DOWN}END{END}ENTER{ENTER}ou ~ESC{ESC}HELP{HELP}HOME{HOME}INS ou INSERT{INSERT} ou {INS}SETA À ESQUERDA{LEFT}NUM LOCK{NUMLOCK}PAGE DOWN{PGDN}PAGE UP{PGUP}PRINT SCREEN{PRTSC}SETA À DIREITA{RIGHT}SCROLL LOCK{SCROLLLOCK}TAB{TAB}SETA ACIMA{UP}F1{F1}F2{F2}F3{F3}F4{F4}F5{F5}F6{F6}F7{F7}F8{F8}F9{F9}F10{F10}F11{F11}F12{F12}F13{F13}F14{F14}F15{F15}F16{F16}Para especificar teclas combinadas com qualquer combinação das teclas SHIFT, CTRL e ALT, preceda o código de teclas de um ou mais dos códigos a seguir: SHIFT+CTRL^ALT%Para especificar que qualquer combinação de SHIFT, CTRL e ALT deve ser mantida pressionada enquanto várias outras teclas são pressionadas, coloque o código dessas teclas entre parênteses. Por exemplo, para especificar manter pressionada SHIFT enquanto E e C são pressionadas, utilize "+(EC)". Para especificar manter pressionada SHIFT enquanto E é pressionada, seguida de C sem SHIFT, utilize "+EC".Para especificar a repetição de teclas, utilize a forma{tecla número}. Você deve colocar um espaço entre tecla e número. Por exemplo, {ESQUERDA 42} significa pressionar a tecla SETA À ESQUERDA 42 vezes; {h 10} significa pressionar H 10 vezes.Observação Você não pode utilizar SendKeys para enviar pressionamentos de teclas para um aplicativo que não tenha sido projetado para ser executado no Microsoft Windows. Sendkeys também não pode enviar a tecla PRINT SCREEN {PRTSC} a nenhum aplicativo.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Marcos Remar Postado Fevereiro 27, 2008 Autor Denunciar Share Postado Fevereiro 27, 2008 Show amigo era isso mesmo mais uma vez brigadão Abraços! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 brunocia2000 Postado Março 3, 2008 Denunciar Share Postado Março 3, 2008 Olá pessoal, aproveitando o título do tópico, gostaria de perguntar como faço o envio de um clique no visual basic?É quase igual a dúvida do Marcos Remar de enviar as teclas, mas eu preciso enviar o clique do mouse.Se puderem me ajudar eu agradeceria. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Março 4, 2008 Denunciar Share Postado Março 4, 2008 A função mouse_event da API Win32. Dê uma pesquisada aqui no fórum e você deverá encontrar algo a respeito.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --brunocia2000 -- Postado Março 4, 2008 Denunciar Share Postado Março 4, 2008 Eai, beleza? Consegui encontrar a solução:Declare as funções em um módulo:Public Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As LongPublic 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)E depois no evento que deseja simular o clique chame os metodos assim:SetCursorPos 12, 12mouse_event &H2, 0&, 0&, 0&, 0&Obs: O 12,12 acima seria as coordenadas X,Y a ajustar para o mouse...Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rogério Vaz Postado Junho 27, 2018 Denunciar Share Postado Junho 27, 2018 (editado) Olá, estou com um problema. Eu não consigo usar o sendkeys em um aquivo de txt criado através de vb excel. Ele é criado e aberto com sucesso, e inclusive com foco normal, abrindo e ficando como janela ativa. Mas, as teclas sendkeys ao invés de funcionarem no recém arquivo txt (bloco de notas) aberto, continuam digitando no excel. A linha final dos meus comandos são: Shell "cmd /c ""notepad.exe """ & strTempFile & """", vbHide strTempFile é uma string de caminho de arquivo. As teclas em sendkeys que gostaria de usar é "^{END}" E EM SEGUIDA "{BACKSPACE}", contudo a instrução acontece no excel e não no bloco de notas. Editado Junho 27, 2018 por Rogério Vaz Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Marcos Remar
Olá pessoal
Estou com mais uma dúvida gostaria de saber como posso fazer com que o vb pressione teclas, como se o programa estivesse digitando.
desde já agradeço!
Link para o comentário
Compartilhar em outros sites
8 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.