10Aug
Potřebovali jste někdy provést stejný bezvýznamný úkol znovu a znovu na vašem PC?Místo toho, abyste plýtvali hodinami klepnutím na tlačítka a stisknutím kláves, je to ten správný čas, kdy chcete využít své dovednosti AutoHotkey, aby vaše práce pro vás fungovalo.
Poznámka: Tento konkrétní příklad je skutečný, který jsem dnes dříve používal, abych ušetřil malé množství času, ale to jsou techniky, které jsem v průběhu let mnohokrát použil, abych doslova ušetřil dny v hodnotě času.
Scénář
Snažil jsem se projít a vyčistit spoustu nesprávných vysílaných zpráv v našem e-mailovém zpravodajském účtu, když jsem si uvědomil, že jejich rozhraní vyžaduje, abych manuálně kliknul na tlačítko Smazat a následně potvrdil každou zprávu -znovu mluvit o 300 nesprávných zprávách, které je třeba odstranit. Aby to bylo ještě horší, rozhraní je extrémně pomalé, což znamená, že bych strávil dobrou 30-40 minut, když jsem klepal a zhoršil můj karpální tunel.
Namísto toho jsem vytvořil nový skript AutoHotkey a rychle napsal skript, abych pro mě pracoval.
Prvním krokem bylo přesné určení, které klepnutí a klíče jsem potřeboval k automatizaci - samozřejmě prvním krokem je kliknutí na tlačítko X, které vyvolá tento potvrzovací dialog Ajax:
Naštěstí se tlačítko Delete automaticky zvýrazní, takže můžete jednodušestisknutím klávesy Space potvrďte. Jakmile byl záznam odstraněn, vše se sklidí, jako kdyby řada nikdy nebyla. Když to víme, budeme pokračovat a vytvoříme skript, který automatizuje klepnutí na tlačítko X, čeká na dialogové okno s potvrzením 3 sekundy, stiskne mezerník a pak čeká další 3 sekundy, aby řádek zmizel.
Vytvoření skriptu
První věcí, kterou budeme chtít udělat, je vytvořit smyčku, která opakovaně opakuje stejné akce - v tomto případě odhadujeme, že to bude nutné opakovat 300krát, a mypoužijete syntaxi smyčky takto:
Loop 300
{
}
Nyní budeme muset automatizovat kliknutí, což je snadné v AutoHotkey - stačí zadat kliknutím .Můžete použít pokročilejší syntaxi pro klepnutí, chcete-li přesně vybrat, kam chcete kliknout na obrazovku nebo kliknutím na tlačítko klepnout. Pro naše účely použijeme pouze výchozí nastavení, které nás zanechává takto:
Loop 300
{
click
}
Nyní náš skript klikne 300 krát za sebou, ale bohužel máme tento potvrzovací dialogřešit, takže nyní použijeme funkci Odeslat k odeslání klávesy Space Bar do aktivního okna.
Loop 300
{
klepnutí na
Odeslat,{ Space}
}
Pokud se podíváte na dokumentaci, uvidíte všechny syntaxe speciálních klíčů - běžná klávesová zkratka mohou být zadána normálně - například pokud chcete zadat test a pak jej ukončete mezerou, použijete toto:
Odeslat, test{ Space}
Takže teď máme skript, který klikne na tlačítko a pak zasáhne mezerník, což by bylo v pořádku kromě rozhraníje pomalá, takže musíme vložit malou pauzu mezi každým provedením funkcí pro klepnutí a odeslání.Chcete-li to provést, použijeme funkci Sleep, která trvá pouze jeden argument - zpoždění v milisekundách.
Loop 300
{
spánek 3000
kliknutím
spánku 3000
Odeslat,{ Space}
}
Nyní máme skript, který bude úspěšně smazat položky a čeká 3 sekundy před spuštěním, takže můžete přesunout kurzor myšipřes první X, klepnutí na tlačítko, čekání na 3 sekundy, stisknutí mezerníku a čekání na 3 sekundy před tím, než projde další sadou. Můžete použít tento jednoduchý skript právě teď, pokud chcete - ale co když chcete skript zastavit?
Co uděláme je použít funkci GetKeyState, abyste zkontrolovali, zda jste stiskli určitý klíč - pro testování, použijeme klávesu F8 a do středu smyčky přidáme následující.Tímto se zjistí, zda bylo stisknuto tlačítko F8, a pak použijte přerušení pro ukončení smyčky.
GetKeyState, state, F8
pokud state = D
break
Poslední scénář
Zde je závěrečný skript, který se dá dohromady, což vám pravděpodobně příliš nepomůže, protože je to specifické pro můj scénář - ale můžete ho použít k vytvořenívlastní skripty jednoduchým modifikováním kliknutí a posláním kláves.
Loop 300
{
GetKeyState, stav, F8
pokud stav = D
break
spánku 3000
kliknout
spánku 3000
Odeslat,{ Space}
}
Zpět
Chcete-li ukázat, jak to funguje v praxi,ukazuje to v akci:
V tomto konkrétním scénáři mi trvalo asi 3 minuty, abych hodil dohromady pracovní uložený skript: 27 minut. Stačí pro mě nahrávat video a napsat tento článek!