hallo Gemeinde,
habe kleinen Text "hallo" [static1] auf einer GUI erstellt.
Dieser soll jetzt aber evtl. mittels rechter Maustaste verschoben werden.
Wie geht das?
Danke
@Berti
hallo Gemeinde,
habe kleinen Text "hallo" [static1] auf einer GUI erstellt.
Dieser soll jetzt aber evtl. mittels rechter Maustaste verschoben werden.
Wie geht das?
Danke
@Berti
Probier mal MouseClickDrag
[edit] Tschuldigung, für dein Problem nicht ganz passend.
Meinst du so?
#Include <Misc.au3>
[/autoit] [autoit][/autoit] [autoit]Opt('GUIOnEventMode', 1)
Global $title = "Drag & Drop"
GUICreate($title)
GUISetOnEvent(-3, '_Ende')
GUICtrlCreateLabel("Drag Me", 100, 100)
GUICtrlSetOnEvent(-1, '_DragMe')
GUICtrlSetCursor(-1, 0)
GUISetState()
[/autoit] [autoit][/autoit] [autoit]While 1
Sleep(10000)
WEnd
Func _Ende()
Exit
EndFunc
Func _DragMe()
Local $Pos_C, $Pos_M, $Opt_old, $x_Offset, $y_Offset
Local $dll = DllOpen("user32.dll")
$Opt_old = Opt('MouseCoordMode', 0)
$Pos_C = ControlGetPos($title, "", @GUI_CtrlId)
$Pos_M = MouseGetPos()
$x_Offset = $Pos_M[0] - $Pos_C[0]
$y_Offset = $Pos_M[1] - $Pos_C[1]
While _IsPressed('01', $dll)
$Pos_M = MouseGetPos()
GUICtrlSetPos(@GUI_CtrlId, $Pos_M[0] - $x_Offset, $Pos_M[1] - $y_Offset)
Sleep(10)
WEnd
DllClose($dll)
Opt('MouseCoordMode', $Opt_old)
EndFunc
danke funkey, genau sowas hatte ich gesucht.
P.S. Wie lasse ich eine oder mehrere von mir erzeugte static's
auf einer Fremdanwendung anzeigen?
Das geht mit der AnyGui-UDF ziemlich einfach. Such mal hier im Forum und im englischen Forum, dann findest du funktionierende Beispiele dazu.
Hallo Funkey.
Dein Script ist doch supi.
Ich würde aber noch ein "_MouseTrap " mit in's Script nehmen, damit der Text nicht aus dem GUI "geschoben" werden kann.
hallo funkey, vielen Dank für die schnelle Antwort.
Ich hatte beim testen ein paar Fehlermeldungen, deshalb hier die
gefixte Version von anygui.au3 mit Beispielen.
http://www.autoitscript.com/forum/index.php?act=attach&type=post&id=24409
Gruss @Berti