Что нового

Запрет перемещения формы

Reimcore

Новичок
Сообщения
21
Репутация
0
Имеется обычная форма
Как запретить ее перемещение мышью?
Т.е. чтобы она всегда была на одном месте?
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

$Form1 = GUICreate("Form1", 633, 447, 197, 146)
GUISetState(@SW_SHOW)

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

	EndSwitch
WEnd


Или сделать чтобы при перетаскивании она возвращалась в заданные координаты?
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
Код:
#include <GUIConstants.au3>

Global $X = 197, $Y = 146

$Form1 = GUICreate("Form1", 633, 447, $X, $Y)
GUISetState(@SW_SHOW)

GUIRegisterMsg($WM_MOVE, "WM_MOVE")

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd

Func WM_MOVE()
  MouseUp("primary")
  WinMove($Form1, "", $X, $Y)
EndFunc

Код:
#include <GUIConstants.au3>
#include <GuiMenu.au3>

$Form1 = GUICreate("Form1", 633, 447, 197, 146)
GUISetState(@SW_SHOW)

_GUICtrlMenu_DeleteMenu(_GUICtrlMenu_GetSystemMenu($Form1), 1)

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd
 
A

Alofa

Гость
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <MenuConstants.au3>

$Form1 = GUICreate('Окно', 200, 100, -1, -1, BitOR($WS_MAXIMIZEBOX, $WS_MINIMIZEBOX))
$Button_1 = GUICtrlCreateButton('Кнопка', 40, 30, 120)
GUISetState(@SW_SHOW)

GUIRegisterMsg($WM_SYSCOMMAND, 'WM_SYSCOMMAND')

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
		Case $Button_1
			MsgBox(4096, '', 'Кнопка работает.')
    EndSwitch
WEnd

Func WM_SYSCOMMAND($hWnd, $Msg, $wParam, $lParam)
	If Not BitAND($wParam, 0xFFFF) = $SC_CLOSE Then Return
	MouseUp('primary')
EndFunc


Добавлено:
Сообщение автоматически объединено:

InnI
Не знал, что такой эффект дает удаление пункта меню :ok:
 
Верх