Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

[Delphi] Controlando o Mouse Com o Teclado


mgbcrazy
 Compartilhar

Posts Recomendados

As vezes você está lá no seu computador e o seu mouse quebra, da problema, ou você simplesmente não tem um mouse, ou está no notbook e não tem a pratica de usar o touchscrem, eis a solução, um code bem facil e bem pratico de se fazer:

 

Coloque um Timer no Form e altere a propriedade Interval para 1. No evento OnTimer coloque o seguinte código:

 

procedure TForm1.Timer1Timer(Sender: TObject);

const

Rapidez = 10;

var

Pos: TPoint;

Key: Byte;

begin

for Key:= 8 to 222 do

begin

if GetAsyncKeyState(Key)=-32767 then

begin

GetCursorPos(Pos);

case Key of

//se for pressionada a tecla para a esquerda

37: SetCursorPos(Pos.X-Rapidez, Pos.Y);

//se for pressionada a tecla para cima

38: SetCursorPos(Pos.X, Pos.Y-Rapidez);

//se for pressionada a tecla para a direita

39: SetCursorPos(Pos.X+Rapidez, Pos.Y);

//se for pressionada a tecla para baixo

40: SetCursorPos(Pos.X, Pos.Y+Rapidez);

//se for pressionado ENTER

VK_RETURN:

begin

mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);

mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);

end;

//se for pressionado SHIFT da direita

VK_RSHIFT:

begin

mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0);

mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0);

end;

end;

end;

end;

end;

 

 

Créditos:

 

 

-=|PiRuKa|=-

 

Mini Tuto:

 

use as setas para a movimentação do cursor

e as teclas Shift e Enter para os clicks õ/

Link para o comentário
Compartilhar em outros sites

curti...hum, li o codigo e entendi o ke ele faz... depois vo testar e fazer algumas modificaçoes ^^

 

flw, abraçs

legal a dica...

 

edit~..

 

ahh, ae vai uma dica minha... eh interessante colokar botoes (ou um botao ;X ) ke habilite e desabilite o timer, ativando e desativando assim o controle do mouse pelo teclado...

soh usando

timer1.enabled:=false

 

e

 

timer1.enabled:=true

 

e tbm, vcs podem alterar as teclas ke movimentarao o mouse, somente mudando o numero, por exemplo....

 

33 = PAGE UP

34 = PAGE DOWN

35 = END

36 = HOME

 

((soh tem o perigo de fikar mais confuso >..< ))

 

e colokando um edit e mudando o inicio do codigo ke ele passou de:

 

const

Rapidez = 10;

var

Pos: TPoint;

Key: Byte;

begin

for Key:= 8 to 222 do

 

para: (( ou seja, deleta a outra parte e escreve esse ke passei, o resto dexa igual ))

 

var

Pos: TPoint;

Key: Byte;

rapidez:integer;

begin

for Key:= 8 to 222 do

for rapidez:=strtoint(edit1.text)to strtoint(edit1.text) do

 

e dexa o numero 10 no text do edit... vc edita depois ke abrir o programa ;/ ( soh pra nao da erro dizendo ke nao eh um valor e tals... )

 

assim, da pra colokar o numero da distancia ke o mouse "vai pular"... bom, eu zuei um poko o codigo, mas eh mais pra mostrar ke da pra usar tanto uma variavel como uma cost nesse caso...

 

flw galera

Link para o comentário
Compartilhar em outros sites

akdopksda

 

Dragoon emo me confundi :S

 

:@

 

acho bem pratico esse metodo q eu postei.

 

eu so faço alterações se achar q ta ruim mas eu acho ta bom :cool:

 

akdsopaoksdpao... eh soh ler com mtaaaaaa calmaaa ke vc entende o ke eu quis dizer... naao ta tao complikadoo (( eh, eu to ligado ke eu sou complikado... mas naao ta tanto )) aksdpoakdsp....

mas do jeito ke vc passou, ta otimo, soh quis da uma dica pro pessoal ae... axo legal pegar um codigo e ver o ke da pra fazer com ele modificando certas coisas xD

 

flw, abraçs

Link para o comentário
Compartilhar em outros sites

=]

 

Gente, eu coloquei os botões, só que o código ja começa ativado! Como eu coloco pra o Timer funcionar só depois de apertar no botao "Ativar" ?

 

@Topic

Muito bom o script! Parabens!

 

Botao "ativar"

 

timer1.enabled:=true;

 

e Botao "desativar":

 

timer1.enabled:=false;

 

OBS: altere a propriedade enabled do timer pra false, ae ele vai começar desativado =]

 

 

flw, abraçs

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.