Blocking Mouse Action (AutoHotkey BlockInput Tip)

Clarification of Earlier AutoHotkey BlockInput Command Tips

While working on a couple of chapters in my new book, I noticed that I had effectively blocked inadvertent mouse movement while running a demonstration of a Windows Paint automation routine. In the script DrawSquiggle.ahk, AutoHotkey turns off the mouse while it executes various other mouse movements. Otherwise, any accidental manual movement of the mouse cursor might screw up the final result. Most importantly, the command to block mouse action worked without raising user privilege levels or running the script as an administrator.

The DrawSquiggle.ahk script demonstrates how AutoHotkey can control the selection of tools and mouse actions in Windows Paint.

Continue reading

Check Window Status with WinGet, ExStyle (AutoHotkey Tip)

ExStyle Settings Help to Polish AutoHotkey Window Manipulation Scripts, Plus a Couple of Tricks

Each window in Microsoft Windows includes style settings (Style and ExStyle) which control its appearance and action. You can view these settings with the CheckStyles.ahk script discussed in the blog “The WinSet, ExStyle Command for Mouse-Click Transparent Windows (Intermediate AutoHotkey Tip).” If you build AutoHotkey window manipulation tools, then you’ll find CheckStyles.ahk indispensable both as a quick reference and a tester. The CheckStyles.ahk script displays the settings for any window under the mouse cursor. Continue reading

Understanding AutoHotkey %Var% Variable Text Replacement (AutoHotkey Tip)

Handy Window Transparency Wheel Using Macro Replacement Quickly Peeks Under a Window without Moving It, Plus the Difference Between % Var and %Var% Made Easy

The AutoHotkey online documentation goes into great detail about the traditional method for retrieving values from variables (%Var%) and the force expression evaluation method (% Var). It can take the new AutoHotkey user a little while to comprehend the differences between the two. In an effort to clarify the variations and help beginners to understand when to use which method, I offer an alternative way to view the operations. For the traditional method, I prefer using the terms macro substitution or variable name replacement. Once, you understand how it works, differentiating when and how to use each technique becomes easy.

The value-added trick comes when creating variables containing new variables on-the-fly by combining the two methods (i.e. forcing an expression % which contain a %Var% variable name replacement). The first step involves replacing the variable with its value, the new variable name (%Var%). The second step requires the forced evaluation of the new variable (% VarValue) as part of an expression.

*          *          *

Volume Control
Volume Wheel

A while back I installed a volume control operated by the mouse scroll wheel. Simply hover over the Windows Task Bar and scroll the mouse wheel up or down to adjust the PC speaker volume level higher or lower, respectively. A progress bar (shown at right) pops up displaying the changing volume level. I’ve added this convenient tool to my standard AutoHotkey script and use it all the time.

Tranparency Menu
Transparency Menu

At a later date, while playing with window visibility, I set up a menu for changing the transparency level for the active window (shown at left). At the end of that blog, I suggested, “If you want to get really fancy, then you might use the mouse wheel to set the transparency (or opaqueness) level.” I’ve done just that with my new SeeThruWinWheel.ahk script. Now, by holding down the CTRL key while scrolling the mouse wheel, the window under the mouse cursor becomes less opaque (WheelDown) or more opaque (WheelUp). In the course of writing this short script, I implemented a number of AutoHotkey tricks worth discussing. Continue reading

Stop Accidental Deletions with the BlockInput Command (AutoHotkey Tip—Part Two)

AutoHotkey BlockInput Command May Cause Stuck Keys! Fix It with the KeyWait Command

In the last blog, we dealt with the issue of setting the privilege level required to use the BlockInput command. In the BackupText.ahk and IncrementalSaveText.ahk scripts, the AutoHotkey command prevents user mouse/keyboard input while the script selects and copies text to the Windows Clipboard, but it doesn’t work without Administrator privileges. After raising the script to a higher level, we demonstrated how to use Windows Task Manager to bypass the User Account Control (UAC) warning window.

At the end of the blog, I mentioned an additional problem where BlockInput causes keys (usually one or more from the Hotkey combination) to stick in the down position. Here’s the trouble. Continue reading

Stop Accidental Deletions with the BlockInput Command (AutoHotkey Tip—Part One)

Ever Wonder Why You Might Want to Block Keyboard and Mouse Input? Here’s One Reason to Use the BlockInput AutoHotkey Command, Plus the Associated Problems

I added the BlockInput command to both the BackupText.ahk and IncrementalSaveText.ahk scripts. I did this to prevent the accidental deletion of the target text by an errant press of a key.

To check out whether the command operated or not, I added a time delay to the script looking for the halting of keyboard and mouse action with BlockInput On. It didn’t work! My experiment demonstrated that the BlockInput command blocked nothing. There’s a good reason for this. Continue reading

Stuffing More into AutoHotkey Pop-up Menus (AutoHotkey Tip)

Rather Than Increasing the Length of a System Tray Menu, Add Submenus—Plus, How to Use Menu Names (A_ThisMenu) for Conditional Actions

cheeseburgerrecipeWhen I decided to add two more recipes to the cheeseburgerwhiteicon Jack Stuffed Cheeseburger script, I ran into the problem of adding too many items (one for each step in each recipe) to the System Tray right-click menu. In the original, Cheeseburger.ahk script, I only included four steps in the menu (Ingredients, Prepare, Cook, and Serve). However, after inserting the Animal-Style Cheeseburger and the Jack Stuffed Cheeseburger (Animal Style) into the script, the number of recipe increments jumped from four to 18—plus an additional Print Recipe option for each burger. Also, since many of the steps use the same (or similar names), I needed a method for identifying each step with the proper recipe. When increasing the number of AutoHotkey menu options, cumbersome lists of items commonly crop up. You can fix these bloated menus by using submenus. Continue reading

New “Why AutoHotkey?” Book Available Free on Amazon

For One Day, Monday, May 1, 2017, the Just Published E-Book Is Available for the Kindle and Kindle Apps on

CoverWhy200I’ve made the new e-book Why AutoHotkey? available exclusively on Amazon and you can get the book free. It’s not that you need the book since most of its contents can be found right here on the Why AutoHotkey? page. I’ve produced this book for people who don’t know about or use AutoHotkey. As you are already accessing this blog, you’re likely well aware of AutoHotkey. My goal with this new book is to reach the AutoHotkey unaware. I’m guessing the Amazon is loaded with those types of Windows users.

I plan to make the book free more times, but Amazon only allows me to give it aways five times in a three-month period. (I would always make it free if they would let me.) Don’t worry if you miss this one. I’ll announce in this blog whenever I schedule another free book day. (Sign-up to follow the blog at the upper right of this page if you want notification whenever a new blog comes out.)

I know…I’ve expressed my disdain for the way Amazon treats independent writers, but they have such a huge reach, it would be silly for me to completely ignore them. (I still prefer people buy from ComputorEdge E-Books, but everyone must have an option.) This new compilation book should help the uninitiated to understand how much power AutoHotkey can bring to their Windows PC.