Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Rekomendowane odpowiedzi

Opublikowano

Cześć! Jestem w to totalnie zielony ale chciałem zrobić sobie clickera co klika jakis klawisz caly czas :P To znaczy chciałbym żeby klikał gdzieś tak co sekundę :) (dla mnie ważne żeby to było F7) W delphi oczywiście

PS. chciałem go dla siebie zrobić!

Lecz pojawił się mały problem. Jest podklejony temat i w jednym znalazłem to czego szukałem:

Kod Ascii Znaczenie

VK_LBUTTON 1 Lewy klawisz myszy

VK_RBUTTON 2 Prawy klawisz myszy

VK_CANCEL 3 CTRL+BREAK

VK_MBUTTON 4 srodkowy klawisz myszy

VK_BACK 8 BACKSPACE

VK_TAB 9 TAB

VK_CLEAR 12 NUMLOCK wyłšczony

VK_RETURN 13 ENTER

VK_SHIFT 16 SHIFT

VK_CONTROL 17 CTRL

VK_MENU 18 ALT

VK_PAUSE 19 PAUSE

VK_CAPITAL 20 CAPS LOCK

VK_ESCAPE 27 ESC

VK_SPACE 32 SPACE

VK_PRIOR 33 PAGE UP

VK_NEXT 34 PAGE DOWN

VK_END 35 END

VK_HOME 36 HOME

VK_LEFT 37 Strzałka w lewo

VK_UP 38 Strzałka w górę

VK_RIGHT 39 Strzałka w prawo

VK_DOWN 40 Strzałka w dół

VK_SELECT 41 SELECT

VK_EXECUTE 43 EXECUTE

VK_SNAPSHOT 44 PRINT SCREEN

VK_INSERT 45 INSERT

VK_DELETE 46 DELETE

VK_HELP 47 HELP

VK_0 .. VK_9 48..57 Klawisze cyfr 0..9

VK_A .. VK_Z 65..90 Klawisze liter A .. Z

VK_LWIN 91 Lewy WIN

VK_RWIN 92 Prawy WIN

VK_APPS 93 APP

VK_NUMPAD0..VK_NUMPAD9 96..105 Klawisze numeryczne 0 .. 9

VK_MULTIPLY 106 * w bloku numerycznym

VK_ADD 107 + w bloku numerycznym

VK_SUBTRACT 109 - w bloku numerycznym

VK_DECIMAL 110 Klawisz przecinka

VK_DIVIDE 111 / w bloku numerycznym

VK_F1 .. VK_F12 112..123 F1 .. F12

VK_F13 .. VK_F24 124..135 F13 .. F24

VK_NUMLOCK 144 NUMLOCK

VK_SCROLL 145 SCROLL LOCK

VK_LSHIFT 160 Lewy SHIFT

VK_RSHIFT 161 Prawy SHIFT

VK_LCONTROL 162 Lewy CTRL

VK_RCONTROL 163 Prawy CTRL

 

 

 

wstawiamy do buttona

keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), 0, 0); {uciska}

keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0);{puszcza}

 

działa na program który jest w "pierwszym palnie"

 

czyli wszędzie na co patrzysz

 

Więc zrobiłem to myślę, że tak jak trzeba. I w tym rzecz, że chyba coś źle zrobiłem bo jak chce dodać następny button to wyskakuje taki błąd:

Expected ';' but '(' found.

 

Prześlę wam wgl cały kod:

 

 

unit Unit1;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs;

 

type

TForm1 = class(TForm)

Button1:keybd_event(VK_A, MapVirtualKey(VK_CONTROL, 0), 0, 0); TButton;

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

end.

 

 

 

To co pogrubione to wkleiłem z tego co napisał kilo_kartofli. Jeśli jest jakiś błąd to proszę o poprawkę :>

Filmik na youtube wrzucam. Ale dobrze by było jakbym otrzymał odpowiedź jak najszybciej :)

Dumny członek MPCforum od 09 czerwca 2009 ;)

Opublikowano

kliknij 2x na button który znajduje sie na formie i wklej

keybd_event(VK_F7, MapVirtualKey(VK_CONTROL, 0), 0, 0);

keybd_event(VK_F7, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0);{puszcza}

Opublikowano

Akurat tak wyszło, że teraz nie mogę sprawdzić czy f7 działa ale zmieniłem na SPACE i nie działa jak dałem start :( i żeby klikało co sekundę

 

@EDIT

takie coś:

unit Unit1;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

 

type

TForm1 = class(TForm)

Button1: TButton;

Button2: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.Button1Click(Sender: TObject);

begin

keybd_event(VK_space, MapVirtualKey(VK_CONTROL, 0), 0, 0);

end;

 

procedure TForm1.Button2Click(Sender: TObject);

begin

keybd_event(VK_space, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0);

end;

 

end.

 

@EDIT teraz mialem mozliwosc sprawdzenia F7 i nie dziala :(

Dumny członek MPCforum od 09 czerwca 2009 ;)

Opublikowano

-_- daj w timera i inverse czy jakoś tak daj na 1000

 

keybd_event(VK_space, MapVirtualKey(VK_CONTROL, 0), 0, 0);

keybd_event(VK_space, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0);

 

daj to w ciele timera

Opublikowano

Mhmmmm... Już wiem w czym problem tkwi, że to nie działa...

To naciska tylko raz spacje, a powinno klikać co 1 sekundę.

 

PS.

Po keybd_event(VK_space, MapVirtualKey(VK_CONTROL, 0), 0, 0);

dałem sleep(500) żeby nie klikało od razu. Wiesz może jak to zrobić żeby klikało co sekundę spacje? Tylko nie parę razy tylko dopóki nie naciśnie się np. STOP lub klawisza ESC :) I nie wiem o co ci z timerem chodzi :P

Dumny członek MPCforum od 09 czerwca 2009 ;)

Opublikowano
To naciska tylko raz spacje, a powinno klikać co 1 sekundę.

to właśnie ci napisałem wcześniej

 

a timer to taki komponent zegarek

 

chyba w System jest...

 

a Interval w inspektorze ustaw na 1000

Opublikowano

a timer to taki komponent zegarek

 

Wiem :>

 

chyba w System jest...

 

Gdzie dokładnie ;> ?

 

a Interval w inspektorze ustaw na 1000

 

Że co kurwa?! xD Sorki ale jak pisałem ja zielony ^^

 

 

@edit ps. ale po co mi ten zegar żeby klikało co sec jak to tylko raz kliknie i tyle. Sprawdzałem na gg ^^

Dumny członek MPCforum od 09 czerwca 2009 ;)

Opublikowano

ggay5.jpg

 

masz nie moje z googleto co jest na formie to timer

a inspektor obiektów to te okno gdzie ustalasz ustawienia

albo napisz

Timer1.Interval:=1000

albo

Timer1.Interval=1000

 

ten zegarek jest jak pętla powtarza blok instrukcji w nim co 1s jeżeli ustawisz na 1000

 

 

 

 

 

 

unit Unit1;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

 

type

TForm1 = class(TForm)

Button1: TButton;

Button2: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.Button1Click(Sender: TObject);

begin

Timer1.Interval:=1000;

 

Timer1.Enabled=true;

 

 

 

end;

 

procedure TForm1.Button2Click(Sender: TObject);

begin

 

end;

 

{timer}

procedure TForm1.Timer1Timer(Sender: TObject);

begin

keybd_event(VK_space, MapVirtualKey(VK_CONTROL, 0), 0, 0);

keybd_event(VK_space, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0);

end;

 

end.

Opublikowano

3m na zyczenie

 

 

unit Unit1;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

 

type

TForm1 = class(TForm)

Button1: TButton;

Button2: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.Button1Click(Sender: TObject);

begin

keybd_event(VK_space, MapVirtualKey(VK_CONTROL, 0), 0, 0);

end;

 

procedure TForm1.Button2Click(Sender: TObject);

begin

keybd_event(VK_space, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0);

end;

 

{timer}

procedure TForm1.Timer1Timer(Sender: TObject);

begin

 

end;

 

end.

 

 

 

 

 

Dumny członek MPCforum od 09 czerwca 2009 ;)

×
×
  • Dodaj nową pozycję...