[Hilfe] mousmove im aktiven fenster

10/20/2009 15:43 staRRFreak#1
ich wollte das meine Maus in einem aktiven Fenster auf eine bestimmte Position klickt unabhängig von der Desktop Auflösen

ich habe das jetzt so bei mir stehen

WinWaitActive("Fenstername")
mousemove(492,229)

aber wen die Desktop Auflösung anders ist klickt die Maus auch wo anders hin
kann mir da einer helfen o0 ?
hat das was mit hidden modus
10/20/2009 16:02 buFFy!#2
@DesktopHeight/Weight +- Offset
10/20/2009 16:23 staRRFreak#3
Quote:
Originally Posted by u-coRe View Post
@DesktopHeight/Weight +- Offset
danke für den Code aber wie setze ich das ein. ich kann damit nix anfangen. ich habe kaum Erfahrung mit autoit.

das soll ein Auto Login werden aber
und eben bei Änderung der Desktop Auflösung funktioniert das nicht mehr mit mousemove(492,229)

hier mein quelltext
10/20/2009 17:12 | Moep |#4
Hatte dafür schonmal eine Lösung gepostet.

[Only registered and activated users can see links. Click Here To Register...]
10/20/2009 17:38 buFFy!#5
Oder hier noch ne Funktion.
Code:
Func _ConvertCoords($x, $y, $CurResol, $NewResol)
	$Cur = StringSplit($CurResol, "x")
	$New = StringSplit($NewResol, "x")
	Local $Coords[2]
	$Coords[0] = Round($x / $Cur[1] * $New[1])
	$Coords[1] = Round($y / $Cur[2] * $New[2])
	Return $Coords
EndFunc
Syntax:
Code:
array _ConvertCoords(
_int x
_int y
_LPCSTR CurResol
_LPCSTR NewResol
Beispiel:
Code:
$NewCoords = _ConvertCoords(500, 700, "800x600", "1024x768")
10/20/2009 18:46 staRRFreak#6
funktioniert i wie nicht

bei mir sieht das jetzt so aus
habe meine Auflösung geändert aber die Maus bewegt sich nicht

wen die NyxLauncher.exe geöffnet wurde ist das Fenster immer gleich groß
(800, 600) das Fenster ändert die Größe nicht
und wen man eine andere Desktop Auflösung hat ist die Position vom Fenster wo anders
wie gesagt ich habe kaum Erfahrung mir autoit ein blutiger Anfänger :S
10/21/2009 08:43 buFFy!#7
Ich hab doch die Syntax definiert ! ConvertCoords() Gibt ein Array zurück, also um (500|700) in z.B. 1024x768 zu konvertieren und dann auch noch an die Stelle der neuen Koordinaten zu klicken würde das so aussehen:

Code:
$aR_coords = _ConvertCoords(500, 700, "800x600", "1024x768")
MouseClick("left", $aR_coords[0], $ar_coords[1])