0

I have an AHK script that moves a panel from ArtRage, I use blockinput, mousemove before doing the click and drag, so the mouse can't move the cursor while AHK is doing the click and drag, but since I use this script in ArtRage, my tablet can interfere with the click and drag despite I used blockinput, mousemove, hence the panel I wanted to drag end up in another different position. Is there a way to temporarily block the input from my wacom tablet? so the position of the stylues could no't interfere with my AHK script?

Can the AHKHID help me on this issue, I saw that it is very complex code. Does anybody have some knowledge on this issue?

2
  • You are clicking and dragging programmatically vs. using WinMove?
    – JJohnston2
    Commented Dec 9, 2016 at 7:05
  • yes cuz it is not a window, is more a panel inside the artrage window and there like 8 panels with the same class name inside
    – litu16
    Commented Dec 15, 2016 at 12:33

1 Answer 1

0

Use WinGet,List to get a list of all the panel windows with the matching class identifier.

Loop through the list. There is example code in the help files that basically does this already, just use the appropriate WinTitle for searching with the desired ahk_class identifier.

Inside the loop, use WinGetPos to get the size and position of each window.

Do a comparison of each window position against where you know the window is located... i.e., where you would click if you were going to click it for dragging.

Once you find the matching window, you can break the loop and use that window as an argument to WinMove to move the window programmatically.

This isn't a direct answer to the question (as asked) but it's going to be more reliable, faster, and less clunky, even if you do figure out how to block the stylus input.

4
  • inside ArtRage all windows are called ToolWindow, so I guess I can't select one cuz all are called the same
    – litu16
    Commented Dec 18, 2016 at 17:15
  • You would need to use the window ID, after looping through the id list returned by WinGet, List to determine which one you want to move
    – JJohnston2
    Commented Dec 18, 2016 at 18:01
  • Hi JJohnston2 I searched in AHK help WinGet autohotkey.com/docs/commands/WinGet.htm which is the example you are refering to? could you please post an example of How I whould loop through all windows inside ahk_class XXX? thanks advanced.
    – litu16
    Commented Jan 4, 2017 at 2:29
  • Search for "list". Example #2. To use the example code replace the WinGet list arguments for WinTitle etc. to match your WinTitle, i.e., ahk_class XXX
    – JJohnston2
    Commented Jan 4, 2017 at 3:39

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .