Hei,
ich bin grade am überlegen wie man die Maus für Spiele im Fenstermodus am besten nur für den Fensterinhalt eingrenzen kann.
Dazu müsste man irgentwie die dicke den Fensterrahmens oder die Breite und Höhe den Inhalts ermitteln.
Habt ihr eine Idee wie man das bewerkstelligen könnte?
Für Leute mit 2 Monitoren ganz praktisch. Bei Warcraft3 wird durch berühren des Randes die Kamera bewegt und das ist bescheuert wenn man die Maus aus dem Fenster rausbewegen kann. Man muss Pixelgenau die Kante treffen
. Der Fensterrahmen zählt schon nicht mehr mit.
Bisher soweit:
Spoiler anzeigen
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <misc.au3>
$GUI = GUICreate("MouseTrap", 138, 86, 192, 124, Default, $WS_EX_TOOLWINDOW)
$Windowtitle = GUICtrlCreateInput("MouseTrap", 8, 8, 121, 21)
$Button = GUICtrlCreateButton("Toggle", 8, 48, 75, 25, $WS_GROUP)
$Label = GUICtrlCreateLabel("Hotkey: Scrollock", 8, 32, 126, 17)
GUISetState(@SW_SHOW)
Global $Running = False
[/autoit] [autoit][/autoit] [autoit]HotKeySet("{SCROLLLOCK}","toggle")
[/autoit] [autoit][/autoit] [autoit]Func toggle()
if $Running Then
$Running = False
_MouseTrap()
Else
$Running = True
$size = WinGetPos(GUICtrlRead($Windowtitle))
if IsArray($size) Then
_MouseTrap($size[0],$size[1],$size[0]+$size[2],$size[1]+$size[3])
Else
$Running = false
_MouseTrap()
EndIf
EndIf
EndFunc
[/autoit] [autoit][/autoit] [autoit]While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
case $Button
toggle()
EndSwitch
WEnd