Global variables for coordinates not working with mouse clicks Topic is solved

Get help with using AutoHotkey (v1.1 and older) and its commands and hotkeys
magicinmath
Posts: 162
Joined: 12 Apr 2017, 23:03

Global variables for coordinates not working with mouse clicks

10 May 2017, 12:59

May have to do with the window being a MS remote desktop app... Seems that placing the coordinates of the mouseclicks within global variables prevents the code from functioning. Let me know if I'm doing something wrong or if theres a solution?
Thank you.

This code works....

Code: Select all

F1::
	WinActivate, Remote Desktop App Window

	SendEvent {Click 97, 137, down}{click 240, 137, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, 263,200
	Sleep 85
	NAME := Clipboard
	Clipboard :=

	Sleep 85
	SendEvent {Click 97, 175, down}{click 214, 175, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, 265,241
	Sleep 85
	GROUP := Clipboard
	Clipboard :=

	Sleep 85
	SendEvent {Click 121, 310, down}{click 185, 310, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, 232,372
	Sleep 85
	SCANEVENT := Clipboard
	Clipboard :=

	Sleep 85
	SendEvent {Click 121, 392, down}{click 185, 392, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, 219,455
	Sleep 85
	SCANALARM := Clipboard
	Clipboard :=
return
[code]
But this doesn't...
[code]
	global NAME_sy
	global NAME_ex
	global NAME_ey
	global NAME_ccx
	global NAME_ccy
	global GROUP_sx
	global GROUP_sy
	global GROUP_ex
	global GROUP_ey
	global GROUP_ccx
	global GROUP_ccy
	global SCANEVENT_sx
	global SCANEVENT_sy
	global SCANEVENT_ex
	global SCANEVENT_ey
	global SCANEVENT_ccx
	global SCANEVENT_ccy
	global SCANALARM_sx
	global SCANALARM_sy
	global SCANALARM_ex
	global SCANALARM_ey
	global SCANALARM_ccx
	global SCANALARM_ccy
	
	NAME_sx:=97
	NAME_sy:=137
	NAME_ex:=240
	NAME_ey:=137
	NAME_ccx:=263
	NAME_ccy:=200
	GROUP_sx:=97
	GROUP_sy:=175
	GROUP_ex:=214
	GROUP_ey:=175
	GROUP_ccx:=265
	GROUP_ccy:=241
	SCANEVENT_sx:=121
	SCANEVENT_sy:=310
	SCANEVENT_ex:=185
	SCANEVENT_ey:=310
	SCANEVENT_ccx:=232
	SCANEVENT_ccy:=372
	SCANALARM_sx:=121
	SCANALARM_sy:=392
	SCANALARM_ex:=185
	SCANALARM_ey:=392
	SCANALARM_ccx:=219
	SCANALARM_ccy:=455

F1::
	WinActivate, Remote Desktop App Window
	
	SendEvent {Click NAME_sx, NAME_sy, down}{click NAME_ex, NAME_ey, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, NAME_ccx,NAME_ccy
	Sleep 85
	NAME := Clipboard
	Clipboard :=

	Sleep 85
	SendEvent {Click GROUP_sx, GROUP_sy, down}{click GROUP_ex, GROUP_ey, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, GROUP_ccx,GROUP_ccy
	Sleep 85
	GROUP := Clipboard
	Clipboard :=

	Sleep 85
	SendEvent {Click SCANEVENT_sx, SCANEVENT_sy, down}{click SCANEVENT_ex, SCANEVENT_ey, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, SCANEVENT_ccx,SCANEVENT_ccy
	Sleep 85
	SCANEVENT := Clipboard
	Clipboard :=

	Sleep 85
	SendEvent {Click SCANALARM_sx, SCANALARM_sy, down}{click SCANALARM_ex, SCANALARM_ey, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, SCANALARM_ccx,SCANALARM_ccy
	Sleep 85
	SCANALARM := Clipboard
	Clipboard :=
return
Nightwolf85
Posts: 302
Joined: 05 Feb 2017, 00:03

Re: Global variables for coordinates not working with mouse clicks  Topic is solved

10 May 2017, 13:05

How about this:

Code: Select all

	global NAME_sx := 97
	global NAME_sy := 137
	global NAME_ex := 240
	global NAME_ey := 237
	global NAME_ccx := 263
	global NAME_ccy := 200
	global GROUP_sx := 97
	global GROUP_sy := 175
	global GROUP_ex := 214
	global GROUP_ey := 175
	global GROUP_ccx := 265
	global GROUP_ccy := 241
	global SCANEVENT_sx := 121
	global SCANEVENT_sy := 310
	global SCANEVENT_ex := 185
	global SCANEVENT_ey := 310
	global SCANEVENT_ccx := 232
	global SCANEVENT_ccy := 372
	global SCANALARM_sx := 121
	global SCANALARM_sy := 392
	global SCANALARM_ex := 185
	global SCANALARM_ey := 392
	global SCANALARM_ccx := 219
	global SCANALARM_ccy := 455

F1::
	SendEvent {Click %NAME_sx%, %NAME_sy%, down}{click %NAME_ex%, %NAME_ey%, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, %NAME_ccx%,%NAME_ccy%
	Sleep 85
	NAME := Clipboard
	Clipboard :=

	Sleep 85
	SendEvent {Click %GROUP_sx%, %GROUP_sy%, down}{click %GROUP_ex%, %GROUP_ey%, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, %GROUP_ccx%,%GROUP_ccy%
	Sleep 85
	GROUP := Clipboard
	Clipboard :=

	Sleep 85
	SendEvent {Click %SCANEVENT_sx%, %SCANEVENT_sy%, down}{click %SCANEVENT_ex%, %SCANEVENT_ey%, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, %SCANEVENT_ccx%,%SCANEVENT_ccy%
	Sleep 85
	SCANEVENT := Clipboard
	Clipboard :=

	Sleep 85
	SendEvent {Click %SCANALARM_sx%, %SCANALARM_sy%, down}{click %SCANALARM_ex%, %SCANALARM_ey%, up}
	Sleep 85
	MouseClick, Right
	Sleep 85
	MouseClick, left, %SCANALARM_ccx%,%SCANALARM_ccy%
	Sleep 85
	SCANALARM := Clipboard
	Clipboard :=
return
I believe you have to de-reference the variables in Sends, or use forced expression mode.
magicinmath
Posts: 162
Joined: 12 Apr 2017, 23:03

Re: Global variables for coordinates not working with mouse clicks

10 May 2017, 13:59

Nightwolf85 wrote:How about this...

I believe you have to de-reference the variables in Sends, or use forced expression mode.
OhhH! I see, cause it's send event! Gotcha, thanks!

edit::

Only thing, the MouseClicks don't need to be referenced. But thank you, was lost on this one :p
Last edited by magicinmath on 10 May 2017, 14:13, edited 1 time in total.
User avatar
theartofx
Posts: 15
Joined: 07 May 2017, 15:50

Re: Global variables for coordinates not working with mouse clicks

10 May 2017, 14:06

If you're working with a variable in an expression, you don't enclose it in percents, strings are automatically considered a variable unless they are enclosed in quotes. If you're working with it outside of an expression, you do.

Code: Select all

TestVar := "Hi"
Hi :=  "Hello"

;Non Expression Example
MsgBox, %TestVar%    ; This Message box will say "Hi"
MsgBox, TestVar        ; This Message box will say "TestVar"

;Express Example
MsgBox %  TestVar     ; This Message box will say "Hi"
MsgBox %  %TestVar% ; This Message box will double reference as the variable Hi and the Message box will say "Hello".
User avatar
SteveMylo
Posts: 233
Joined: 22 Jun 2021, 00:50
Location: Australia
Contact:

Re: Global variables for coordinates not working with mouse clicks

20 Dec 2022, 03:00

Nightwolf85 wrote:
10 May 2017, 13:05
How about this:
I believe you have to de-reference the variables in Sends, or use forced expression mode.
This helped me 5 years on. ha thanks :dance: 🤗

Return to “Ask for Help (v1)”

Who is online

Users browsing this forum: Bing [Bot], Chunjee, Galvanise, Mateusz53, Rohwedder and 165 guests