Stiskněte "Enter" pro přeskočení obsahu

AutoClick2 – program pro automatizované klikání myší

10

Před mnoha lety jsem pro kámoše vytvářel aplikaci na automatizované klikání AutoClick. Program byl původně pro Windows XP a byl psaný ve Visual Basic 6, takže jeho pozdější úpravy a používání bylo komplikované. Hlavní účel programu byl automatizace hraní hry Travian, ale nalezl i šlechetnější použití, třeba při stahování rodokmenů.

Podporované OS OS s .Net Framework 4.6 a novější
Stáhnout v1.1 autoclick2-v1-1.zip (cca 40 kB)

Několikrát mi někdo psal, jestli jdou upravit funkce makra, opravení průhlednosti a podobně. Úpravy bohužel nebyly již možné a tak jsem se rozhodl vytvořit novou verzi programu – AutoClick2.

Spuštěný program. Čeká se na přesný čas pro spuštění makra.
Nastavení programu při stahování fotek z internetu – viz video

Program AutoClick2 je určen pro Windows 10. Jeho ovládání je velice jednoduché. Nejprve je nutné vytvořit seznam souřadnic myši (levá část okna). Do seznamu pozic se souřadnice uloží kliknutím na tlačítko „Add position„. Na obrazovce se vybere požadovaná pozice myši. Ke každé souřadnici jde přidat popisek, je možné ručně editovat pozici, zobrazit pozici ukazatele přímo na monitoru a přesouvat jednotlivé pozice nahoru a dolu v seznamu.

Přidání souřadnice myši do databáze (plocha je zvýrazněna červeně a jsou zobrazeny souřadnice myši).

Pro ovládání myši je nutné vždy vytvořit makro v pravé části okna. Makro se skládá z jednotlivých příkazů (viz níže) s parametrem a volitelného popisu.

Příkaz Min./max. parametr Popis
L. button Click 1 – 99999 Kliknutí levým tlačítkem myši na pozici
L. button double Click 1 – 99999 Dvojklik levým tlačítkem myši na pozici
R. button Click 1 – 99999 Kliknutí pravým tlačítkem myši na pozici
R. button double Click 1 – 99999 Dvojklik pravým tlačítkem myši na pozici
L. button Down 1 – 99999 Stisknutí levého tlačítka myši na pozici
L. button Up 1 – 99999 Uvolnění levého tlačítka myši na pozici
R. button Down 1 – 99999 Stisknutí pravého tlačítka myši na pozici
R. button Up 1 – 99999 Uvolnění pravého tlačítka myši na pozici
Mouse move 1 – 99999 Přesunutí ukazatele myši na pozici
Interval (ms) 50 – 99999 Změna intervalu provádění příkazů
Restart macro 0 Restart makra (přesun na první příkaz)
Nothing 0 Prázdný příkaz
Loop par-times 1 – 99999 Počet opakování příkazů mezi tímto příkazem a příkazem „Loop return“
Loop return 0 Návrat v případě opakování
Stop macro 0 Zastavení makra

Rychlost provádění jednotlivých příkazů makra se řídí hodnotou „Default interval“ (hodnota je v ms). Tuto hodnotu lze v makru změnit příkazem „Interval (ms)„. Makro lze spustit okamžitě stisknutím tlačítka „Start macro„, nebo v nastavený čas při zvolení „Start macro at„. Během čekání je v záhlaví okna zobrazeno „WAITING„. Při provádění makra je v záhlaví okna zobrazeno „RUN„.

Ukončit makro lze tlačítkem „Stop macro„, nebo přepnutím stavu CapsLock (kvůli pohybování myší nemusí být možné stisknout tlačítko „Stop macro„).

Kompletní nastavení programu včetně souřadnic a makra je možné uložit do souboru a poté v případě nutnosti znovu načíst.

Pokud máte nějaké nápady na vylepšení programu, další příkazy makra apod., můžete napsat do komentářů. Je možné, že do programu přidám další funkce.

Ukázka makra

V příkladu výše existují tři přednastavené pozice (Pozice1, Pozice2, Pozice3).

  • Makro nejdříve 5x klikne na pozici č. 1 (řádky 1 až 3).
  • Poté klikne pravým tlačítkem na pozici myši 2 (řádek 4).
  • Dva příkazy se nic neděje (slouží ke zpomalení např, při načítání – doba záleží na nastaveném intervalu) (řádky 5 a 6).
  • Následně se 3x klikne levým tlačítkem myši na pozici myši č. 3 (řádky 7 až 9).
  • Celé makro se restartuje. Je nutné manuální ukončení stisknutím tlačítka „Stop„, nebo stisknutím tlačítka CapsLock.
  1. Lomakcz Lomakcz

    zdravím, kůli zdravotnímu stavu jsem přestal být schopen klikat pravým tlačítkem myši. Potřebuji poradit, zda půjde tímto programem nastavit, PŘIDRŽENÍM LEVÉHO TLAČÍTKA MYŠI PO DOBU 5 SEC KLIKNE PRAVÉ … nechci něco zmrvit a rozhašit komp.

    Peťan: Bohužel, program toto neumí. Zde si člověk předem připraví jak a kam chce klikat a po spuštění program začne ovládat myš podle nastavení. Doporučuji spíše projít nastavení windows – přehození L a P tlačítka myši, názvy souborů jako odkazy (není potřeba dvojklik) apod. Více v Start > Nastavení > Usnadnění přístupu.

  2. JoZef JoZef

    TOTO CELE JE UPLNE NA KUNDU . KTORZ IDIOT MOZE CELY POSTUP NAZVAT AKO JEDNODUCHY URCITE FETUJE

    Peťan: Pokud je někdo totální dement, tak chápu, že ovládání nemusí pochopit na první dobrou. Stejně tak jako vypnutí CapsLock.
    Ovládání vychází z předchozího programu, kde pomocí různých příkazů bylo možné vytvořit i komplikovanější makra. Na pouhé jedno kliknutí je ovládání komplikované, ale pokud potřebuje člověk udělat něco složitějšího, tak to jde.
    Pokud máte problém se složením makra, tak napište co přesně potřebujete a já přidám příklad.

  3. Fejfa Fejfa

    Dam pozici 1 pak Makro a kdyz zadam pozici 2 a pak zase makro a spustím to tak se udela jen první řádek pozice a makra na ne už druhý, třerí

    Peťan: Úplně nechápu co máš na mysli. Pošli buď screenshot programu, nebo uložené makro/seznam pozic a já se na to mrknu.

    • Matej Matej

      Já si myslím, že vím, o čem Fejfa psal.
      Taky jsem narazil na problém, že jsem si zadal souřadnice, ale prováděl se jen první příkaz, ale rychle jsem pochopil, že parametrem makra u kliknutí se myslí ID pozice. Fejfa to asi takhle nepochopil.

  4. Láďa N. Láďa N.

    Prográmek jsem použil pro zautomatizování naskenování dokumentace rozvaděče. Šlo o cca 150 stran a nemohl jsem riskovat poškození jedinečné dokumentace (proto muselo přijít na řadu ruční skenování).
    Bylo by fajn, kdyby program uměl přehrát nějaký zvuk (ideálně vlastní, zvolený). Já to vyřešil ponecháním otevřeného VLC přehrávače, který vždy přehrál zvuk pro vložení nového listu do skeneru 😁.
    Taky jsem si všiml podivného chování programu, pokud mám v Makru příkaz interval s jinou (v mém případě vyšší) hodnotou parametru, než je defaultní, tak se při spuštění Makra změní hodnota i u Default interval.
    Buďto je to chyba, nebo jsem nepochopil smysl.
    Jinak ale díky, mám rád tyhle „utilitky“ co ulehčí práci s pc.

    Peťan: Jsem rád, že program našel využití 🙂 Koukal jsem do programu (už je to nějaký ten pátek) a to chování je tak naprogramované. Už ani nevím proč, možná to je spíše chyba. Ale při změně intervalu v makru se změní i default interval. Jestli budu dělat další verzi, tak to opravím. A snad přidám i ten příkaz pro přehrání zvuku.

  5. Martin Martin

    Zdravím,
    velmi šikovný prográmek. Byly by možné i tato makra:
    1) psaní textu do řádku (provede se klik a do vymezeného sektoru se napíše text)
    2) spustit klik při určité změně v řádku (zobrazí se slovo, číslo v přesně vymezeném sektoru a aplikace provede klik v požadovaném sektoru, zobrazí se slovo, číslo v přesně vymezené sektoru a zároveň se přesně pod tímto slovem, textem zobrazí slovo, číslo a spustí se klik)
    např.1
    pes nebo 5 – klik
    např.2
    pes,5
    kočka, 10
    provede se klik

    Peťan: Bohužel, tyto funkce program neumí. Bod 1 by asi nebyl problém dodělat. Bod 2 by byl větší oříšek – muselo by to mít vestavěné nějaké OCRko, které by detekovalo text. Dříve jde dělal aplikaci, která reagovala na změnu barvy jednoho konkrétního pixelu na obrazovce a podle toho spustila makro.

  6. Míra Míra

    Jsem spokojen -funguje. Ušetřil jsem několik hodin života.

    Peťan: Tak to jsem rád 🙂

  7. Mates Mates

    zdravim, slo by nastavit dvojklik na levem tlacitku tak aby to nedelalo samo ale pouze kdyz kliknu levim 1x ?
    dekuji.

    Peťan: Bohužel ne. Klikání se dá spustit pouze jako program. Ale podobná funkce se dá např. naprogramovat u herních myší. K čemu by to mělo sloužit?

  8. Jakub Straka Jakub Straka

    Dobrý den,
    nešel by přidat časovač v sekundách a ideálně do 180 sekund? Problém je že nejde udělat pauzu třeba 1 minutu a půl
    Díky za info.

    Peťan: Pauza jde udělat pomocí cyklu čekání a prázdného příkazu. Tohle nastaví interval provádění příkazů na 1 sekundu a pak to 180x zopakuje příkaz „Nothing“. Mělo by to pak prostě cyklovat mezi těmito příkazy:
    Interval 1000
    Loop par-times 180
    Nothing
    Loop return

    Nebo je možné nastavit interval na delší čas a použít např. tři příkazy „Nothing“. Potom se ryclost provádění příkazů nastaví na 500 ms

    Interval 30000
    Nothing
    Nothing
    Nothing
    Interval 500

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *