Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Maza Faka,
Цитата:
Как сделать, что бы левой кнопкой мыши можно было перетаскивать (drag) элемент Label в пределах GUI-окна?
Нужно отлавливать нажатие мышки, а потом MouseGetPos() + GuiCtrlSetPos()

Код: Выделить весь код
#include <GuiConstants.au3>
Opt("MouseCoordMode", 2)

$Gui = GuiCreate("Test")
$Label = GUICtrlCreateLabel("My Label, Move me ;)", 20, 20)

GUISetState()

While 1
    $Msg = GUIGetMsg()

        Switch $Msg
        Case -3
            Exit
        Case Else
            $CurInfo = GUIGetCursorInfo($Gui)
            While $CurInfo[2] = 1 And $CurInfo[4] = $Label
                $CurInfo = GUIGetCursorInfo($Gui)
                $LabelPos = ControlGetPos($Gui, "", $Label)
                If $LabelPos[0] <> MouseGetPos(0) Or $LabelPos[1] <> MouseGetPos(1) Then
                    GUICtrlSetPos($Label, MouseGetPos(0), MouseGetPos(1))
                Else
                    Sleep(5)
                EndIf
            WEnd
    EndSwitch
WEnd

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:54, 21-09-2007 | #457